首页 > 解决方案 > 我想使用 Python 打印奇数

问题描述

count=int(input("insert number")
i=0
while True:
    i+=1
    if i % 2 == 0:
        continue
    print(i)
    if i == count:
        break

当我输入奇数(5、7、9 等)时,此代码会打印奇数进行计数。但是当我输入偶数(2,4,6,8 等)时,此代码不会停止。请给我解决方案

标签: python

解决方案


那是因为它只停在奇数。因为当数字是偶数时,您首先添加了 continue 。你可以这样做:

count = int(input("insert number"))
i = 0
while True:
    i+=1
    if i % 2 == 0: 
        if i >= count: break #added this
        continue
    print(i)
    if i >= count: #fixed == to >=
        break
    

我固定if i == count:if i >= count:添加if i >= count: break了 continue 语句,因为它在继续时不会中断。它有效!

或这样做:

count = int(input("insert number"))
i = 0
while i != count:
    i+=1
    if i % 2 == 0:
        continue
    print(i)
    if i == count:
        break

我补充说while i != count:。这使得如果 i 与 count 相同,它就会停止!

或者只是这样做:

count = int(input("insert number"))
i = 0
for i in range(1, count + 1, 2):
    print(i)

我添加了这样的 for 语句。-> 从 1 开始并重复直到 count +1,每次重复 i + 2。


推荐阅读