Computer >> Máy Tính >  >> Lập trình >> Python

Có gì khác biệt trong | và toán tử OR trong Python?


Trong Python hoặc là một toán tử logic và | là một toán tử bitwise. Toán tử hoặc yêu cầu hai giá trị thuộc bất kỳ loại nào và có thể đúng hoặc sai. Nó trả về true nếu bất kỳ toán hạng nào đánh giá là true.

>>> a=50
>>> b=25
>>> a>40 or b>40
True
>>> a>100 or b<50
True
>>> a==0 or b==0
False
>>> a>0 or b>0
True

Các | toán tử nhận các bit làm toán hạng và trả về 1 nếu bất kỳ một toán hạng nào là 1

>>> a=10   #0000 1010
>>> bin(a)
'0b1010'
>>> b=20   #0001 0100
>>> bin(b)
'0b10100'
>>> c=a|b
>>> c
30         #0001 1110
>>> bin(c)
'0b11110'