我正在try 用Python来解决众所周知的FizzBuzz问题,但我不明白,为什么Python不判断"组合"标准.

以下是我的代码:

i = 0

while i + 1 < 100:
    i = i + 1
      
    if i % 3 == 0:
        print(str(i) + " fizz")
    elif i % 5 == 0:
        print(str(i) + " buzz")
    elif (i % 3 == 0 and i % 5 == 0):
        print(str(i) + " fizzbuzz")
    
    else:
        print(str(i))

我不明白为什么在可以被3和5整除的情况下,它不写Fizzbuzz.

我想看到"冒泡"、"嗡嗡"或"嗡嗡",但我只看到"嗡嗡"或"嗡嗡".为什么?

推荐答案

我不知道这为什么管用,但这对我很管用.

我只是把判断这两个"东西"的条件放在最上面.

这里:

i = 0

while i + 1 < 100:
    i = i + 1
    if (i % 3 == 0 and i % 5 == 0):
        print(str(i) + " fizzbuzz")
    
    elif i % 3 == 0:
        print(str(i) + " fizz")
    elif i % 5 == 0:
        print(str(i) + " buzz")
    
    else:
        print(str(i))

我希望这对你有用,遗憾的是,我无法解释为什么他们会这样.

Python相关问答推荐

acme错误-Veritas错误:模块收件箱没有属性linear_util'

类型错误:输入类型不支持ufuncisnan-在执行Mann-Whitney U测试时[SOLVED]

Excel图表-使用openpyxl更改水平轴与Y轴相交的位置(Python)

如何让Flask 中的请求标签发挥作用

如何列举Pandigital Prime Set

将pandas Dataframe转换为3D numpy矩阵

Godot:需要碰撞的对象的AdditionerBody2D或Area2D以及queue_free?

在vscode上使用Python虚拟环境时((env))

如何根据一列的值有条件地 Select 前N组?

基于行条件计算(pandas)

如何创建引用列表并分配值的Systemrame列

pandas fill和bfill基于另一列中的条件

根据客户端是否正在传输响应来更改基于Flask的API的行为

如何在验证文本列表时使正则表达式无序?

如何使用matplotlib查看并列直方图

Python协议不兼容警告

无法在盐流道中获得柱子

如何获取给定列中包含特定值的行号?

无法使用请求模块从网页上抓取一些产品的名称

`Convert_time_zone`函数用于根据为极点中的每一行指定的时区检索值