柳州网站建设psn118,个人小程序怎么申请注册,网站开启gzip压缩,暖色调 网站调用函数python有很多内置函数#xff0c;我们可以直接调用#xff0c;详见python官方文档#xff1a;内置函数 — Python 3.11.2 文档#xff0c;也可以在命令行中输入help(函数名)来查看该函数的使用法则。函数名的本质就是指向一个函数对象的引用#xff0c;完全可以用…调用函数python有很多内置函数我们可以直接调用详见python官方文档内置函数 — Python 3.11.2 文档也可以在命令行中输入help(函数名)来查看该函数的使用法则。函数名的本质就是指向一个函数对象的引用完全可以用赋值的方法为原函数起一个别名aabs//给abs函数起一个别名a
print(a(-12))//使用a来代替abs实现其功能12
定义函数定义函数的格式def my_first_hanshu(x,y,z):if x8 and y8 and z8:print(Crush)else:print(Pity)return
#以下为试用自定义的函数1
my_first_hanshu(8,8,8)Crush
总之定义语句要以def开头接下来就是函数名和参数列表参数不需要声明数据类型注意要使用return语句。空函数若要定义一个功能暂时没想好的函数可以用pass语句def non():pass这样让pass先代替函数体使得该函数被调用时程序可以正常运行此外pass语句还可以用于条件语句和循环语句中。参数检查对于自定义函数当传入不恰当的参数时系统不会像内置函数一样返回出错信息所以要在自定义的函数体的开端使用内置函数isinstance()和错误提示语句raise实现数据类型的检查def my_first_hanshu(x,y,z):if not isinstance(x,int) and not isinstance(y,int) and not isinstance(z,int):raise TypeError(bad operand type)if x8 and y8 and z8:print(Crush)else:print(Pity)返回多个值函数需要返回多个值时只要把值都写在同一个return语句后即可会返回一个元组tuple里面包含了多个值可以将tuple通过一个赋值号赋值给多个变量系统会按位置一一赋值。import math
def ma(x):return math.ceil(x),math.floor(x)
a,bma(1.123)
print(a,b)2 1
函数的参数位置参数def power(a,b):s1while b0:b-1s*areturn s上面的power函数中有两个位置参数a和b调用函数时传入的两个值按位置顺序依次赋值给参数a和b。默认参数上面定义了新的power函数后原来power函数使用一个参数计算平方的功能就用不了了这时可以修改一下原定义直接在参数列表中给b赋值为2这样如果调用函数时只写了一个参数那就默认参数b为2def power(a,b2):s1while b0:b-1s*areturn s需要注意的是默认参数必须放在参数列表的后端可以有多个默认参数默认参数必须指向不变对象比如列表也可以作为默认参数但每次调用后若对列表进行了增减删改则其在下一次调用时就变化了。可变参数可变参数即传入的参数个数是可变的可以是0个或任意个。在不使用可变参数时若需要传入不定个数的值则函数参数应为列表或元组def calc(numbers):sum0for n in numbers:sumnreturn sum
calc([1,2,3,4,5,6,7,8,9])
calc((9,8,7,6,5,4,3,2,1))若使用可变参数只需在参数前加上*def calc(*numbers):sum0for n in numbers:sumnreturn sum
calc(1,2,3,4,5,6,7,8,9)#不需要数据写成list或tuple
list[11,22,33,44,55]
calc(*list)#在列表名前加*就可以将列表的所有元素作为可变参数传进去关键字参数可变参数允许传入任意个参数这些参数在函数调用时自动组装为一个元组关键字参数则允许传入任意个含参数名的参数这些关键字参数在调用时自动组装为一个字典def person(name,age,**other):#前两个参数为必选参数other为关键字参数调用时可以不传入print(name:,name,age:,age,other:,other)
#可以只传入必选参数
person(Tom,18)name:Tom age:18 other:{}#可以再传入一个关键字参数
person(Bob,19,homelandUSA)name:Bob age:19 other:{homeland:USA}#可以传入多个关键字参数
person(Eric,18,homelandChina,genderM)name:Eric age:18 other:{homeland:China,gender:M}
同样若有给定一个字典dict可以在调用person函数时在关键字参数的位置上写**dict就会将dict的内容放入other中。命名关键字参数若单独使用一个关键字参数标志**other则可传入的关键字参数的数量和类型没有限制若要限制关键字参数的名字就可以用命名关键字参数使用特殊分隔符*其后的参数被视为命名关键字参数def person(name,age,*,homeland,gender):print(name,age,homeland,gender)
#调用如下
person(Jack,23,homelandUK,genderM)Jack 23 UK M
命名关键字参数可以有默认值从而简化调用def person(name,age,*,homelandChina,gender):print(name,age,homeland,gender)
#调用如下
person(Tom,11,genderM)Tom 11 China M
参数组合在python中定义函数参数定义的顺序必须是必选参数、默认参数、可变参数、关键字参数和命名关键字参数.递归函数函数自己调用自己就是递归。典例汉诺塔问题