我试图在python中定义一个可以获取任何整数列表的函数。如果整数是3和5的倍数,它将在变量a中列出一个。如果整数是3的倍数,它将在变量b中添加到列表中。如果整数是5的倍数,它将在变量c中添加到列表中。
如何在迭代函数中引用列表中的每个项目?
这是我到目前为止所拥有的。感谢
intList = [15, 30, 40]
def function(intList):
a = 'Fizz'
b = 'Buzz'
c = a + b
for x in intList:
if x in intList % 5 == 0 and x in intList % 3 == 0:
intList.append(c)
elif x in intList % 3 == 0:
intList.append(a)
elif x in intList % 5 == 0:
intList.append(b)
print(function(intList))
回复
Traceback (most recent call last):
File "python", line 18, in <module>
File "python", line 6, in function
NameError: name 'x' is not defined
我希望获得的回复是[15,&#39; FizzBuzz&#39;,30,&#39; FizzBuzz&#39; 40,&#39; Buzz&#39;]
答案 0 :(得分:0)
要靠近您的代码,您可以执行以下操作:
def fizz_buzz(intList):
a = 'Fizz'
b = 'Buzz'
c = a + b
res = []
for x in intList:
if (x % 5 == 0) and (x % 3 == 0):
res = res + [x,c]
elif x % 3 == 0:
res = res + [x,a]
elif x % 5 == 0:
res = res + [x,b]
return res
list = [1, 15, 30, 40]
print(fizz_buzz(list))
>>> [15, 'FizzBuzz', 30, 'FizzBuzz', 40, 'Buzz']