Python 我怎样才能在这个问题上停止重叠?

Python 我怎样才能在这个问题上停止重叠?,python,Python,喂,有人能帮我清理代码吗?我怎样才能用fizz,buzz of fizzbuzz代替重叠的数字呢。而且程序也不允许我自己除以num 问题: 编写一个程序,打印从1到100的数字 但是对于三个打印的倍数“嘶嘶”而不是数字,对于五个打印的倍数“嘶嘶” 对于3和5的倍数的数字,打印“FizzBuzz” 不要只打印“fizz”、“buzz”和“fizzbuzz”,而是添加第四个打印语句:“prime”。当你遇到素数(只能被它本身和一整除)时,你应该打印这个 你犯了一些错误: for num in ran

喂,有人能帮我清理代码吗?我怎样才能用fizz,buzz of fizzbuzz代替重叠的数字呢。而且程序也不允许我自己除以num

问题:

编写一个程序,打印从1到100的数字

但是对于三个打印的倍数“嘶嘶”而不是数字,对于五个打印的倍数“嘶嘶”

对于3和5的倍数的数字,打印“FizzBuzz”

不要只打印“fizz”、“buzz”和“fizzbuzz”,而是添加第四个打印语句:“prime”。当你遇到素数(只能被它本身和一整除)时,你应该打印这个


你犯了一些错误:

for num in range(100):
print(num) #This line is why all numbers are getting printed(you have no condition for them)
if num % 3 == 0:
    print(num) # you dont want this line because if num % 3 == 0 you only want to print 'fizz'
    print("fizz")
if num % 5 == 0:
    print(num) # Same for this line you want to only print 'buzz'
    print("buzz")
if num % 3 == 0 and num % 5 == 0: # Here you come to another problem beauce if num is dividable by 3 and by 5 then all 3 'if statements' will run. What you want to do is make sure that this is not the case before printing the others, you can do this by either changing your other 'if statements' to if num % 3 == 0 and num % 3 != 0 and vise versa
    print(num) # same here you want to only print 'fizzbuzz'
    print("fizzbuzz")
#if num % num == 0:
#    print(num)
#    print("prime")
试试这个,也许:

for num in range(100):
    if num % 3 == 0 and num % 5 != 0:
        print("fizz")
    if num % 5 == 0 and num % 3 != 0:
        print("buzz")
    if num % 3 == 0 and num % 5 == 0: 
        print("fizzbuzz")

这里有两个不同的问题:1)如何实现fizzbuzz 2)如何检查数字是否为素数。这两个都是非常常见的初学者编码练习,所以我建议做一点谷歌研究,尝试应用它,然后如果有什么东西仍然给你带来麻烦,你可以问一个更集中的问题。第一个关于“fizzbuzz python”的谷歌结果是一个非常合理的实现:谢谢!我还是个新手,正在努力学习。如果你继续使用
,想想当这三个都是真的时会发生什么。对所做的更改进行更多解释可能有助于理解错误。我感谢你的帮助。
for num in range(100):
    if num % 3 == 0 and num % 5 != 0:
        print("fizz")
    if num % 5 == 0 and num % 3 != 0:
        print("buzz")
    if num % 3 == 0 and num % 5 == 0: 
        print("fizzbuzz")