summaryrefslogtreecommitdiffstats
path: root/HACKING.rst
diff options
context:
space:
mode:
Diffstat (limited to 'HACKING.rst')
-rw-r--r--HACKING.rst13
1 files changed, 10 insertions, 3 deletions
diff --git a/HACKING.rst b/HACKING.rst
index 3f6a3ed..3cea316 100644
--- a/HACKING.rst
+++ b/HACKING.rst
@@ -26,16 +26,23 @@ General
mylist = Foo().list() # OKAY, does not shadow built-in
+- Use the "is not" operator when testing for unequal identities. Example::
-- Use the "not in" operator for collection membership evaluation. Example::
+ if not X is Y: # BAD, intended behavior is ambiguous
+ pass
+
+ if X is not Y: # OKAY, intuitive
+ pass
+
+- Use the "not in" operator for evaluating membership in a collection. Example::
- if not X in Y: # BAD, hard to understand
+ if not X in Y: # BAD, intended behavior is ambiguous
pass
if X not in Y: # OKAY, intuitive
pass
- if not (X in Y or X is Z): # OKAY, still better than all those 'not's
+ if not (X in Y or X in Z): # OKAY, still better than all those 'not's
pass