回答編集履歴
2
修正
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
|
10
10
|
|
11
|
-
そして
|
11
|
+
~~そして~~ 以下、別の話となるので今回は無視してください。
|
12
12
|
|
13
13
|
|
14
14
|
|
@@ -16,4 +16,14 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
とのことです。すなわち`if 変数 is not None`が良いでしょう。
|
19
|
+
とのことです。すなわち~~`if 変数 is not None`が良いでしょう。~~
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
- 「変数が`None`か」判定したい場合は`if 変数 is None`
|
24
|
+
|
25
|
+
- 「変数が`None`ではないか」判定したい場合は`if 変数 is not None`
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
が良いでしょう。
|
1
修正
test
CHANGED
@@ -1,4 +1,14 @@
|
|
1
1
|
[if not a in b / if a not in b](https://teratail.com/questions/198601)の回答にも挙げられていますが、[PEP8のプログラミングに関する推奨事項](https://pep8-ja.readthedocs.io/ja/latest/#id41)によると
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
> None のようなシングルトンと比較をする場合は、常に is か is not を使うべきです。絶対に等値演算子を使わないでください。
|
6
|
+
|
7
|
+
また、 本当は if x is not None と書いているつもりで、 if x と書いている場合は注意してください - たとえば、デフォルトの値がNoneになる変数や引数に、何かしら別の値が設定されているかどうかをテストする場合です。この「別の値」は、ブール型のコンテクストでは False と評価される(コンテナのような)型かもしれませんよ!
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
そして
|
2
12
|
|
3
13
|
|
4
14
|
|
@@ -6,4 +16,4 @@
|
|
6
16
|
|
7
17
|
|
8
18
|
|
9
|
-
とのことです。
|
19
|
+
とのことです。すなわち`if 変数 is not None`が良いでしょう。
|