-
函数参数是需要传递给函数内部的数据
函数参数可以是任意的数据类型,只要函数内部逻辑可以处理即可。
有时候由于函数的实现关系,需要特定的参数,就比如前面实现的求绝对值的函数my_abs(),如果传递一个字符串,就会引起错误。
为了保证函数的正常运行,有时候需要对函数入参进行类型的校验,Python提供isinstance()函数,可以判断参数类型,它接收两个参数,第一个是需要判断的参数,第二个是类型。
以下是绝对值的优化
def my_abs(x):
if not isinstance(x, int) or not isinstance(x, float):
print('param type error.')
return None
if x >= 0:
return x
else:
return -x查看全部 -
在函数内部,还可以调用其他函数
在函数内部调用其他函数,是非常常见的,通过合理拆分逻辑,可以降低程序的复杂度。如果在一个函数内部调用其自身,这个函数就是递归函数
使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。查看全部 -
注意打印的result,其实它是tuple类型,如果我们需要取出结果中的周长或者面积,使用对应位置的下标就可以获得对应的结果。查看全部
-
在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号()、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回
请注意,return表示返回的意思,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回。查看全部 -
win+R打开运行窗口查看全部
-
True or True # ==> True
True or False # ==> True
False or True # ==> True
False or False # ==> False查看全部 -
True and True # ==> True
True and False # ==> False
False and True # ==> False
False and False # ==> False查看全部 -
因为Python把0、空字符串和None看成False,其他数值和非空字符串都看成True,所以:
True and 0计算结果是0
继续计算0 or 99计算结果是 99
因此,结果是99。
需要注意的是,not计算的优先级是高于and和or的。查看全部 -
在set里面,使用remove()函数进行元素的删除,使用add()函数添加元素,使用update()函数批量添加元素
求list的长度len()函数
要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数 abs(),它接收一个参数。
对于abs()函数,abs就是函数的名称,括号()内,就是函数的参数,当函数没有参数时,默认就是一个空括号。abs接收一个参数,这个参数就是需要求绝对值的数,这个参数可以是整数,也可以是浮点数
cmp()函数,可以比较两个数的大小,这个时候,cmp()函数就接收两个参数。
还有基础数据类型的转换函数,int()函数可以将合法的其它类型数据转换为整数,str()函数可以将其它类型的数据转换为字符串。查看全部 -
如果同学名字的列表和同学成绩的列表是一一对应的,那么通过下标,我们也可以找到每个同学的成绩。
names = ['Alice', 'Bob', 'Candy', 'David', 'Ellena']
scores = [45, 60, 75, 86, 49]
index = 0
for name in names:
score = scores[index]
print('name = {}, score = {}'.format(name, score))
index = index + 1查看全部 -
num = 0
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
num = num + 1
if num % 2 != 0:
continue
print(item)
查看全部 -
# Enter a code
L = ['Alice','Chinese',92,'Math',75,'Englise',99]
print(L)
查看全部 -
# Enter a code
s1 = 'ABC'
s2 = '123'
s3 = 'xyz'
for x in s1:
for y in s2:
for z in s3:
print(x + y + z)
查看全部 -
# Enter a code
num = 0
sum = 0
while num <= 1000:
num = num + 1
if num % 2 == 1:
continue
sum = sum + num
print(sum)查看全部 -
# Enter a code
num = 2
sum = 0
while True:
if num > 1000:
break
sum = sum + num
num = num + 2
print(sum)
查看全部
举报