@@ -1906,28 +1906,30 @@ In the standard library code, you will see several common patterns for
19061906correctly using identity tests:
19071907
190819081) As recommended by :pep: `8 `, an identity test is the preferred way to check
1909- for ``None ``.  This reads like plain English in code and avoids confusion with 
1910- other objects that may have boolean values that evaluate to false.
1909+     for ``None ``.  This reads like plain English in code and avoids confusion
1910+    with  other objects that may have boolean values that evaluate to false.
19111911
191219122) Detecting optional arguments can be tricky when ``None `` is a valid input
1913- value.  In those situations, you can create a singleton sentinel object
1914- guaranteed to be distinct from other objects.  For example, here is how
1915- to implement a method that behaves like :meth: `dict.pop `: :
1913+     value.  In those situations, you can create a singleton sentinel object
1914+     guaranteed to be distinct from other objects.  For example, here is how
1915+     to implement a method that behaves like :meth: `dict.pop `:
19161916
1917-    _sentinel = object()  
1917+    ..  code-block ::  python 
19181918
1919-    def pop(self, key, default=_sentinel): 
1920-        if key in self: 
1921-            value = self[key] 
1922-            del self[key] 
1923-            return value 
1924-        if default is _sentinel: 
1925-            raise KeyError(key) 
1926-        return default 
1919+       _sentinel =  object () 
1920+ 
1921+       def  pop (self key , default = _sentinel): 
1922+           if  key in  self : 
1923+               value =  self [key] 
1924+               del  self [key] 
1925+               return  value 
1926+           if  default is  _sentinel: 
1927+               raise  KeyError (key) 
1928+           return  default 
19271929
19281930
1929- identity tests.  This prevents the code from being confused by objects such as 
1930- ``float('NaN') `` that are not equal to themselves.
1931+     identity tests.  This prevents the code from being confused by objects
1932+    such as  ``float('NaN') `` that are not equal to themselves.
19311933
19321934For example, here is the implementation of
19331935:meth: `!collections.abc.Sequence.__contains__ `::
0 commit comments