['函数的参数']
>>> ['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(,4)
10
>>> sum(,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 楼上的同学很赞。 def myfunc(s,vt,o):
return "".join((o,vt,s))
myfunc("我","打了","小甲鱼")
SyntaxError: invalid syntax
def myfunc(s,vt,o):
return "".join((o,vt,s))
myfunc("我","打了","小甲鱼")
SyntaxError: invalid syntax
为什么总是会出现这种情况呢??? 学习 码农心 发表于 2022-5-16 16:07
def myfunc(s,vt,o):
return "".join((o,vt,s))
myfunc("我","打了","小甲鱼")
同样也遇到类似情况,我的Py版本为3.10.3
另起一行 学习打卡{:10_257:} 码农心 发表于 2022-5-16 16:07
def myfunc(s,vt,o):
return "".join((o,vt,s))
myfunc("我","打了","小甲鱼")
''.join() 功能默认不返回结果
加一句
print(myfunc()) 为什么我的sum是这样:sum(iterable, start=0, /),不能使用关键字参数了 学习 >>> sum(,start=2)
Traceback (most recent call last):
File "<pyshell#169>", line 1, in <module>
sum(,start=2)
TypeError: sum() takes no keyword arguments
>>> sum(,2)
5
我使用这个,右侧start=2,报错,不知道是什么原因?
滴滴滴~打卡{:10_266:} 墨墨在努力吖 发表于 2022-10-11 14:44
>>> sum(,start=2)
Traceback (most recent call last):
File "", line 1, in
用help(sum)查看你的sum函数情况,sum(iterable, /, start=0),看/在哪个位置. def myfunc(s,vt,o):
return"".join(o,vt,s)
myfunc("我","打了","小甲鱼")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
myfunc("我","打了","小甲鱼")
File "<pyshell#10>", line 2, in myfunc
return"".join(o,vt,s)
TypeError: str.join() takes exactly one argument (3 given)
def myfunc(s,vt,o):
return"".join((o,vt,s))
myfunc("我","打了","小甲鱼")
'小甲鱼打了我'
myfunc("香蕉","打了","大海")
'大海打了香蕉' 码农心 发表于 2022-5-16 16:07
def myfunc(s,vt,o):
return "".join((o,vt,s))
myfunc("我","打了","小甲鱼")
交互模式里应该在隔一行,不然myfunc的缩进与上面def是对齐的,自然就报错了
andyleesh 发表于 2022-12-30 11:09
def myfunc(s,vt,o):
return"".join(o,vt,s)
return后加空格 阳阳得意ok 发表于 2023-1-11 16:50
return后加空格
感谢指导,我学到现在感觉跟没学一样 KinokoCC 发表于 2022-5-28 11:00
学习
加油 学习
页:
[1]
2