def returnComparison(comparison, *args):
# Sample:
# returnComparison('greater than', 10, 20, 55) --> 55
if comparison == "greater than":
return max(args)
elif comparison == "less than":
return min(args)
else:
flag = True
for arg in range(args-1):
if args[arg] != args[arg+1]:
flag = False
return flag
Error: <class 'NameError'>!
答案 0 :(得分:1)
我认为您需要帮助修复脚本进入else
语句时获得的异常。
这里的问题非常简单。你正在从元组中减去一个整数。
事实上,这里更大的错误是您没有正确使用range()
功能。你应该传递一个整数来使它工作。
解决方案非常简单。将代码的第10行更改为:for arg in range(len(args)-1):
len()
函数返回args元组的长度。
所以,你的代码最终会像这样:
def returnComparison(comparison, *args):
# Sample:
# returnComparison('greater than', 10, 20, 55) --> 55
if comparison == "greater than":
return max(args)
elif comparison == "less than":
return min(args)
else:
flag = True
for arg in range(len(args)-1):
if args[arg] != args[arg+1]:
flag = False
return flag
祝你好运!