我理解"继续"使程序跳回循环。
例如:
while True:
print('Who are you?')
name = input()
if name != 'Joe':
continue
print('Hello, Joe')
因此,如果我输入除joe之外的任何名称,则continue语句跳过它并跳回到循环,因为条件"if"
为真,但如果它为假,则程序继续到最后第print('Hello, Joe')
行
但是在这段代码中,我不明白continue语句是如何工作的:
for num in range(2, 10):
if num % 2 == 0:
print("Found an even number", num)
continue
print("Found a number", num)
在什么条件下继续声明"跳过"并跳回到循环?它看起来更像是else语句。
答案 0 :(得分:1)
回答你的问题
在什么条件下,continue语句“跳过”并跳回循环?
if
条件查找偶数。如果数字是偶数,那么,如您所说,它将打印"Found an even number"
,并继续for
循环。
因此,您编写的代码也是正确的:
for num in range(2, 10):
if num % 2 == 0:
print("Found an even number", num)
else:
print("Found a number", num)
会产生相同的结果。
答案 1 :(得分:0)
“继续”声明并没有“跳回”'在for循环中,它只是进入下一次迭代。 在示例中,在continue语句之后,我们移动到下一个元素(不均匀的数字)
答案 2 :(得分:0)
我认为令人困惑的是if语句中%
运算符的功能:if num % 2 == 0
。哪个不要混淆与用于字符串格式的%标记。
num1 % num2
产生整数除法运算num1/num2
的余数。这通常称为模数操作。
如果数字甚至是40,则40%2等于0:
>>> foo = 40
>>> print(foo%2)
0
如果数字是奇数,那么17%2等于1
>>> foo = 17
>>> print(foo%2)
1
因此num%2
操作可用于通过检查此操作的结果是否等于0来检测num
是偶数还是奇数:
if num%2 == 0:
print('the number is even')