算術演算と論理演算の両方で式を評価しようとしています。私は実際に出力と混同しています。例えば論理演算子でPythonの式を評価する
:
eval('100 >= 1000 & 100 >= 95')
True ==> Wrong
eval('400 >= 0 & 400 >= 0')
True ==> Right
私は&オペレータ後の状態の出力を提供します。論理演算をevalで使用することはできません
eval('400 >= 5000 | 400 >= 0')
False ==> Wrong
OR演算子を使用すると、出力が異なります。私は式の中float値で試したとき
、それは例外TypeError
eval('400.0 >= 0 & 400.0 >= 0')
Traceback (most recent call last):
File "<pyshell#70>", line 1, in <module>
eval('400.0 >= 0 & 400.0 >= 0')
File "<string>", line 1, in <module>
TypeError: unsupported operand type(s) for &: 'int' and 'float'
は、論理演算することなく、ここに混乱
eval('400.0 >= 0')
True ==> Right
を、それを使用して投げます。
は、私は疑問に思うなぜあなたは '使用している|'と '&' – Elazar
は私がする必要がありますこのような表現を評価する。 'aa> = 1000 AND bb> = 95'である。私はaaとbbの値を代入して、 – Gopi
を評価しています。 'and'と' or 'を使用します。 – Elazar