diff options
author | Adam Bard <github@adambard.com> | 2015-10-31 19:02:26 +0800 |
---|---|---|
committer | Adam Bard <github@adambard.com> | 2015-10-31 19:02:26 +0800 |
commit | 15c9543ebc12b81758cade21d8532e07d27ebc8b (patch) | |
tree | 8cfd5c3825666ef1a469c19f8c6abbcf60bff2d4 | |
parent | 8303f2ed3995d18950be4e62b2ced2e3dcd35620 (diff) | |
parent | 14c85ba0ffbb66d9c2a056006cedaa90df8f22f4 (diff) |
Merge pull request #1898 from yihongang/python_truthiness
add more details on truthiness
-rw-r--r-- | python.html.markdown | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/python.html.markdown b/python.html.markdown index 5bc8d28a..7d7e4baf 100644 --- a/python.html.markdown +++ b/python.html.markdown @@ -63,7 +63,7 @@ allow you to write Python 3 code that will run on Python 2, so check out the Pyt # to carry out normal division with just one '/'. from __future__ import division 11/4 # => 2.75 ...normal division -11//4 # => 2 ...floored division +11//4 # => 2 ...floored division # Modulo operation 7 % 3 # => 1 @@ -148,8 +148,16 @@ None is None # => True # very useful when dealing with primitive values, but is # very useful when dealing with objects. -# None, 0, and empty strings/lists all evaluate to False. -# All other values are True +# Any object can be used in a Boolean context. +# The following values are considered falsey: +# - None +# - zero of any numeric type (e.g., 0, 0L, 0.0, 0j) +# - empty sequences (e.g., '', (), []) +# - empty containers (e.g., {}, set()) +# - instances of user-defined classes meeting certain conditions +# see: https://docs.python.org/2/reference/datamodel.html#object.__nonzero__ +# +# All other values are truthy (using the bool() function on them returns True). bool(0) # => False bool("") # => False |