我正在创建一个函数,它应该返回、start、和100 (包括在内)之间的每三个数字的列表。例如,every_three_nums( 91 )应该返回列表91、94、97、100。最初,我尝试了以下几种方法:
def every_three_nums(start):
list = []
a = 0
if start > 100:
return list
else:
a = range(start, 101, 3)
print(list(a))
print(every_three_nums(91))
我得到了TypeError:'list‘对象是不可调用的。
如果我用
print(list(range(91, 101, 3)))
在职能范围内。尽管如此,工作之外的功能。
我不太明白理由。你能帮我做这个吗?
最后,我解决了:
def every_three_nums(start):
list = []
a = 0
if start > 100:
return list
else:
for i in range(start, 101, 3):
list.append(i)
return list
print(every_three_nums(91))
发布于 2020-04-16 17:16:51
您将list
函数重新定义为list = []
函数中的list实例。因此,当您调用list(a)
时,您将列表对象视为一个函数。重命名该变量,它应该可以工作。
https://stackoverflow.com/questions/61255984
复制相似问题