Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
If statement if表达式的计算结果为False,但仍将执行它_If Statement_Python 3.x_Boolean - Fatal编程技术网

If statement if表达式的计算结果为False,但仍将执行它

If statement if表达式的计算结果为False,但仍将执行它,if-statement,python-3.x,boolean,If Statement,Python 3.x,Boolean,输出为: for i in range(6, 21): for y in range(len(lst)): if i % lst[y] != 0 and i % 2 != 0 and i % 3 != 0 and i % 5 != 0 and i != lst[-1]: lst.append(i) print(lst) 那么,对于第二个七:7%3!=0(真)和i%2,3,5!=0(对)和我!=lst[-1](7!=7->FALSE),为什么列表会附加第二

输出为:

for i in range(6, 21):
for y in range(len(lst)):
    if i % lst[y] != 0 and i % 2 != 0 and i % 3 != 0 and i % 5 != 0 and i != lst[-1]:
        lst.append(i)
        print(lst)

那么,对于第二个七:7%3!=0(真)和i%2,3,5!=0(对)和我!=lst[-1](7!=7->FALSE),为什么列表会附加第二个7?

您的代码,具有固定的缩进和初始值
lst

[2, 3, 5, 7, 7, 7, 11, 11, 11, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 7]
[2, 3, 5, 7, 7, 7, 11, 11, 11, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 7, 11]
[2, 3, 5, 7, 7, 7, 11, 11, 11, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 7, 11, 13]
[2, 3, 5, 7, 7, 7, 11, 11, 11, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 7, 11, 13, 17]
[2, 3, 5, 7, 7, 7, 11, 11, 11, 11, 11, 11, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,    19, 19, 19, 19, 19, 19, 7, 11, 13, 17, 19]
告诉我:

lst=[2,3,5]
for i in range(6, 21):
    for y in range(len(lst)):
        if i % lst[y] != 0 and i % 2 != 0 and i % 3 != 0 and i % 5 != 0 and i != lst[-1]:
            lst.append(i)
            print(lst)

你确定你在你的问题中发布了相同的代码吗?

lst列表的初始内容是什么?对不起,lst的初始内容是->lst=[2,3,5]我得到了
[2,3,5,7,11,13,17,19]
最后。是的,打印方法的缩进程度是问题所在。谢谢是的,但是在shell中(我不知道为什么),我的输出在第一篇文章中。但是如果我打开一个新文件并复制粘贴代码,我会看到与您相同的输出。您可能忘记将
lst
重新调整为初始值,或者在缩进中出错。我无法复制您的输出,即使是在外壳中。谢谢您的回复。我还有一个问题:在条件I%lst[y]!=if表达式中的0,为什么将数字121添加到列表中,因为121%11!=0(FALSE)。当y等于0时,添加121。在这种情况下,您有:
121%2!=0和121%2!=0和121%3!=0和121%5!=0和121%119!=0
[2, 3, 5, 7]
[2, 3, 5, 7, 11]
[2, 3, 5, 7, 11, 13]
[2, 3, 5, 7, 11, 13, 17]
[2, 3, 5, 7, 11, 13, 17, 19]