>>> ['函数的参数']
['函数的参数']
>>> ['1--位置参数']
['1--位置参数']
>>> def myfunc(s,vt,o):
return"".join((o,vt,s))
>>> myfunc("我","打了","小甲鱼")
'小甲鱼打了我'
>>> myfunc("小甲鱼","打了","我")
'我打了小甲鱼'
>>> ['2--关键字参数']
['2--关键字参数']
>>> myfunc(o="我",vt="打了",s="小甲鱼")
'我打了小甲鱼'
>>> myfunc(o="我","清蒸","小甲鱼")
SyntaxError: positional argument follows keyword argument
>>> ['位置参数必须在关键字参数之前']
['位置参数必须在关键字参数之前']
>>> myfunc("我","清蒸了",s="小甲鱼")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
myfunc("我","清蒸了",s="小甲鱼")
TypeError: myfunc() got multiple values for argument 's'
>>> myfunc("我","清蒸了",o="小甲鱼")
'小甲鱼清蒸了我'
>>> ['默认参数--在函数调用时如果没有采用实参,那么在函数调用时就会采用默认参数来代替']
['默认参数--在函数调用时如果没有采用实参,那么在函数调用时就会采用默认参数来代替']
>>> def myfunc(s,vt,o="小甲鱼"):
return "".join((o,vt,s))
>>> myfunc("香蕉","吃")
'小甲鱼吃香蕉'
>>> myfunc("香蕉","吃","不二如是")
SyntaxError: invalid character ',' (U+FF0C)
>>> myfunc("香蕉","吃","不二如是")
'不二如是吃香蕉'
>>> ['当给了一个实参之后,就不会使用默认参数']
['当给了一个实参之后,就不会使用默认参数']
>>> def myfunc(s="苹果",vt,o="小甲鱼"):
SyntaxError: non-default argument follows default argument
>>> def myfunc(s="苹果",vt,o="小甲鱼"):
SyntaxError: non-default argument follows default argument
>>> ['这是因为默认参数也要滞后']
['这是因为默认参数也要滞后']
>>> def myfunc(vt,s="苹果",o="小甲鱼"):
return "".join((o,vt,s))
>>> myfunc("爱吃")
'小甲鱼爱吃苹果'
>>> help(abs)
Help on built-in function abs in module builtins:
abs(x, /)
Return the absolute value of the argument.
>>> abs(-1.5)
1.5
>>> abs(x=-1.5)
Traceback (most recent call last):
File "<pyshell#30>", line 1, in <module>
abs(x=-1.5)
TypeError: abs() takes no keyword arguments
>>> [' abs(x,/) 中 / 的含义是斜杠的左边的参数必须传递位置参数,而不能是一些关键字参数之类']
[' abs(x,/) 中 / 的含义是斜杠的左边的参数必须传递位置参数,而不能是一些关键字参数之类']
>>> sum([1,2,3],4)
10
>>> sum([1,2,3],start=4)
10
>>> def abc(a,/,b,c):
print(a,b,c)
>>> abc(1,2,3)
1 2 3
>>> abc(a=1,2,3)
SyntaxError: positional argument follows keyword argument
>>> ['斜杠的左边不能出现关键字参数']
['斜杠的左边不能出现关键字参数']
>>> abc(3,b=2,c=1)
3 2 1
>>> def abc(a,*,b,c):
print(a,b,c)
>>> [' * 号的左侧既可以是位置参数,也可以是关键字参数;而*号的右边只可以是关键字参数']
[' * 号的左侧既可以是位置参数,也可以是关键字参数;而*号的右边只可以是关键字参数']
>>> abc(1,b=2,c=3)
1 2 3
>>> abc(1,2,3)
Traceback (most recent call last):
File "<pyshell#46>", line 1, in <module>
abc(1,2,3)
TypeError: abc() takes 1 positional argument but 3 were given
>>> abc(a=1,b=2,c=3)
1 2 3