質問編集履歴
1
ChatGPTの回答を追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -18,3 +18,20 @@
|
|
18
18
|
|
19
19
|
2023.04.21 18:35 /Users/test.py:123 [1] <module> true
|
20
20
|
2023.04.21 18:35 /Users/test.py:131 [2] <module> false
|
21
|
+
|
22
|
+
以下ChatGPTの回答です。
|
23
|
+
and演算子の方がor演算子よりも優先順位が高いため、and演算子の評価が先に行われます。
|
24
|
+
1. 括弧で囲まれた部分
|
25
|
+
2. not
|
26
|
+
3. and
|
27
|
+
4. or
|
28
|
+
|
29
|
+
したがって、以下のように評価されます。
|
30
|
+
|
31
|
+
1. "a" in menu を評価する。
|
32
|
+
2. "b" in menu を評価する。
|
33
|
+
3. "c" in menu を評価する。
|
34
|
+
4. 3と"d" not in menuをand演算子で評価する。
|
35
|
+
1〜4の結果をor演算子でつなげた結果を求める。
|
36
|
+
つまり、"4" not in menuの評価は3とand演算子でまとめて行われます。
|
37
|
+
Pythonではor演算子は左から右に評価され、左辺がTrueの場合は右辺の評価を行いません。
|