Pho*_*nix 1 python for-loop python-3.x
a = [1,2,3,4,5]
b = [6,7,8,9,10]
Run Code Online (Sandbox Code Playgroud)
.
for x in a and b:
print(x)
Run Code Online (Sandbox Code Playgroud)
产出:6 7 8 9 10
for x in a or b:
print(x)
Run Code Online (Sandbox Code Playgroud)
输出:1 2 3 4 5
有人可以解释为什么在这两个实例中产生这个输出.
简单:
>>> a and b
[6, 7, 8, 9, 10]
>>> a or b
[1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
该and运营商将返回b,因为它必须同时检查a和b.该or运营商认为a作为一个值不False因此立即返回它.