带有 break 语句的 Python While 循环

Python While loops with break statement

提问人:Osman 提问时间:7/12/2023 最后编辑:Osman 更新时间:7/12/2023 访问量:54

问:

我有这两个 while 循环的例子,我从《用 Python 自动化无聊的东西》一书中读到, 这本书给这第一个贴上了标签 “烦人的while循环”

names = ''
while names != 'your name':
    print('please type your name.')
    names = input()
print('thank you')

本书在“中断语句”部分下展示了第二个示例。

while True:
    print("please type your name.")
    namess=input()
    if namess == 'your name':
        break
print('Thank You')

两个代码的响应方式相同。 我的问题是,在编程时,我应该始终将 while 循环与 break 语句一起使用,还是在某些情况下可以接受并且应该使用“烦人的循环”?

谢谢。

我期待 while 循环与 break 语句的不同行为。

python while-loop 中断

评论


答:

1赞 Carcigenicate 7/12/2023 #1

我没有读过 AtBS,但两个循环之间的真正区别在于第一个是传统循环,而第二个是 Python 对 ...圈;它有其他语言版本。whiledowhile

两者之间的主要区别在于第一个,在进入循环体时检查条件。在第二种情况下,当环体退出时检查条件。

您可以查找 和 ...循环以获得更好的想法,但简而言之,当您在检查条件是否有意义之前需要一些设置时,后者很有用,并且无论如何,循环的每次迭代都需要该设置。这里就是这种情况,为了条件,需要在循环之外可用,但不需要其他条件。whiledowhilenames

评论

0赞 Carcigenicate 7/12/2023
@Osman代码在注释中根本无法很好地显示。您应该添加到您的问题中以添加上下文,或者您可以在 discord 上与我联系以获得更多帮助。carcigenicate
0赞 Osman 7/12/2023
谢谢,我现在明白了两者之间的区别,例如,这将很好地使用 while 循环,而没有 break 语句,在该语句中,您需要设置,一旦条件为 False,python 将退出循环。count = 0 而 count <= 10:print(count) 计数 = count+1