Python函数:多个参数
我需要定义一个函数T(I),它在I=1到1=3之间具有相同的值(比如10),在I=4处具有不同的值(比如20)。我写了下面的代码Python函数:多个参数,python,function,arguments,Python,Function,Arguments,我需要定义一个函数T(I),它在I=1到1=3之间具有相同的值(比如10),在I=4处具有不同的值(比如20)。我写了下面的代码 def T(i): for i in range(1, 4): y= 10 return y if i==4: y= 20 return y for i in range(1, 5): print(i,T(i)) i=1到1=3之间的值打印正确,但i=4处的值错误。似乎第二个参数分配不正确。请帮忙 提前谢谢。您需要先处理特殊情况 d
def T(i):
for i in range(1, 4):
y= 10
return y
if i==4:
y= 20
return y
for i in range(1, 5): print(i,T(i))
i=1到1=3之间的值打印正确,但i=4处的值错误。似乎第二个参数分配不正确。请帮忙
提前谢谢。您需要先处理特殊情况
def T(i):
if i < 4:
return 10
else:
return 20
for i in range(1, 5): print(i,T(i))
def T(i):
如果i<4:
返回10
其他:
返回20
对于范围(1,5)中的i:打印(i,T(i))
函数中不需要for
循环,因为您从循环中调用T()
,而return
将退出函数,因此if
语句无法执行
更简单的方法是:
def T(i):
return 20 if i==4 else 10
但是,定义函数并不是实现此目的的必要条件,您可以在列表中实现相同的条件:
[20 if i==4 else 10 for i in range(1,5)]
无法访问的
之后的if
块。第一个返回
将控制权移交给调用者。你到底在干什么?你的缩进(或拉科夫)不正确,也许这就是问题所在。感谢回复ILI,但缩进在原始代码中是正确的。感谢回复Moses,但我如何修复它?