gpt4 book ai didi

python - 有没有办法在 Python (3) for 循环中做条件语句?

转载 作者:行者123 更新时间:2023-12-04 11:13:50 24 4
gpt4 key购买 nike

主要来自 Java 编码,想知道 Python 是否可以在其 for 循环中使用条件和不同类型的递增,如 Java 和 C 可以。对不起,如果这似乎是一个简单的问题。
IE。:

boolean flag = True
for(int i = 1; i < 20 && flag; i *= 2) {
//Code in here
}

最佳答案

不直接。一个 for loop 迭代预先生成的序列,而不是生成序列本身。天真的翻译可能看起来像

flag = True
i = 1
while i < 20:
if not flag:
break
...
if some_condition:
flag = False
i *= 2
但是,您的代码可能会执行 break无论您在哪里设置声明 flagFalse ,所以你可能完全摆脱了标志。
i = 1
while i < 20:
...
if some_condition:
break
i *= 2
最后,您可以定义自己的生成器来迭代
def powers_of_two():
i = 1
while True:
yield i
i *= 2


for i in powers_of_two():
...
if some_condition:
break

关于python - 有没有办法在 Python (3) for 循环中做条件语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62683076/

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