Python 在多个列表中
我最近对此感到困惑Python 在多个列表中,python,syntax,operator-precedence,Python,Syntax,Operator Precedence,我最近对此感到困惑 如果2英寸([1,2]或[3,4]):打印(真) 其他:打印(错误) #打印正确 或是布尔运算符,如何将其应用于列表 如果[1,2]或[3,4]中的2,为什么它的工作原理与相同 使用any() 或操作于任何类型,而不仅仅是布尔型。它返回最左边的实数操作数,如果没有实数操作数,则返回False。所以([1,2]或[3,4])相当于[1,2],因为任何非空列表都是真实的 一般来说,运算符不会像在英语中那样在编程语言中自动分布a或b中的x与a中的x或b中的x不相同。编程语言递归地
如果2英寸([1,2]或[3,4]):打印(真)
其他:打印(错误)
#打印正确
或
是布尔运算符,如何将其应用于列表相同
any()
或
操作于任何类型,而不仅仅是布尔型。它返回最左边的实数操作数,如果没有实数操作数,则返回False
。所以([1,2]或[3,4])
相当于[1,2]
,因为任何非空列表都是真实的x大致相当于:
temp = a or b
x in temp
- 两种说法都不同李>
- 在第一种情况下,python将首先在[1,4]中运行
2
itsFalse
,因此现在它将检查bool([1,3])
及其True
以打印1
- 但对于第二种情况,首先执行
([1,4]或[1,3])
,然后返回第一个非空列表。因此它将返回[1,4]
,但2不在列表中,因此不会打印任何内容
- 这都是关于执行命令的李>
- 再看两个例子。特别是最后一个例子
([1,4]或[2,4])
将返回[1,4]
,2不在[1,4]
中。现在它不会签入第二个列表[2,4]
。如果这是你想要的,这不是正确的方法。使用any
>>如果[1,4]或[1,3]中的2为真:
... 印刷品(1)
...
1.
>>>如果2英寸([1,4]或[1,3]):#错误
... 印刷品(1)
...
>>>如果[1,4]或[]中的2为假:
... 印刷品(1)
...
>>>如果2英寸([1,4]或[2,4]):#错误!!
... 印刷品(1)
...
该条件应实际读取(2 in sub代表[1,2],[3,4]]):
回答您的另一个问题:非空列表被视为“真实”,因此[1,2]或[3,4]
计算结果为真实
@reliance updated
temp = a or b
x in temp