gpt4 book ai didi

Python Fizzbuzz 循环问题

转载 作者:行者123 更新时间:2023-12-01 04:17:52 26 4
gpt4 key购买 nike

我已经搜索了大约一个小时的答案,似乎大多数人对 fizzbuzz 的编码方式都与我不同。

但是,在尝试了一切方法来找出为什么这个简单的代码不起作用后,我感到非常沮丧。

任何人都可以指出我确定遇到的简单问题吗?代码运行但它只返回值 1。

def fizzbuzz(intList):
for n in intList:
if n % 3 == 0 and n % 5 == 0:
return n.replace(str(n),"Fizzbuzz")
elif n % 3 == 0:
return n.replace(str(n),"Fizz")
elif n % 5 == 0:
return n.replace(str(n),"Buzz")
else:
return n

最佳答案

它查看的第一个值是1。由于 1%x 对于 1x 仅是 0,因此它会转到 else 并返回 1。然后就完成了,因为这就是 return 的作用。

这会导致更大的问题,即您正在启动一个循环,然后保证仅在一次迭代后就会离开该循环,因为每个分支中都有一个 return 。您需要将这些 return 语句替换为 append()list(不要忘记 return 生成的 list) 或 print() 调用。

此外,如果您从 3 等内容开始,您的代码将尝试对整数使用 replace,而这不是您可以对整数执行的操作。你会得到一个回溯。

关于Python Fizzbuzz 循环问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34101222/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com