diff options
Diffstat (limited to 'python3.html.markdown')
| -rw-r--r-- | python3.html.markdown | 58 | 
1 files changed, 29 insertions, 29 deletions
diff --git a/python3.html.markdown b/python3.html.markdown index 470eb6e4..9d965fb1 100644 --- a/python3.html.markdown +++ b/python3.html.markdown @@ -39,7 +39,7 @@ Note: This article applies to Python 3 specifically. Check out [here](http://lea  # Except division which returns floats by default  35 / 5  # => 7.0 -# Result of integer division truncated down both for positive and negative.  +# Result of integer division truncated down both for positive and negative.  5 // 3     # => 1  5.0 // 3.0 # => 1.0 # works on floats too  -5 // 3  # => -2 @@ -73,8 +73,8 @@ False or True #=> True  # Note using Bool operators with ints  0 and 2 #=> 0  -5 or 0 #=> -5 -0 == False #=> True  -2 == True #=> False  +0 == False #=> True +2 == True #=> False  1 == True #=> True  # Equality is == @@ -145,7 +145,7 @@ bool({}) #=> False  # Python has a print function  print("I'm Python. Nice to meet you!") -# No need to declare variables before assigning to them.  +# No need to declare variables before assigning to them.  # Convention is to use lower_case_with_underscores  some_var = 5  some_var  # => 5 @@ -186,7 +186,7 @@ li[2:]  # => [4, 3]  li[:3]  # => [1, 2, 4]  # Select every second entry  li[::2]   # =>[1, 4] -# Revert the list +# Return a reversed copy of the list  li[::-1]   # => [3, 4, 2, 1]  # Use any combination of these to make advanced slices  # li[start:end:step] @@ -196,7 +196,7 @@ del li[2]   # li is now [1, 2, 3]  # You can add lists  # Note: values for li and for other_li are not modified. -li + other_li   # => [1, 2, 3, 4, 5, 6]  +li + other_li   # => [1, 2, 3, 4, 5, 6]  # Concatenate lists with "extend()"  li.extend(other_li)   # Now li is [1, 2, 3, 4, 5, 6] @@ -213,7 +213,7 @@ tup = (1, 2, 3)  tup[0]   # => 1  tup[0] = 3  # Raises a TypeError -# You can do all those list thingies on tuples too +# You can do most of the list operations on tuples too  len(tup)   # => 3  tup + (4, 5, 6)   # => (1, 2, 3, 4, 5, 6)  tup[:2]   # => (1, 2) @@ -235,15 +235,15 @@ filled_dict = {"one": 1, "two": 2, "three": 3}  # Look up values with []  filled_dict["one"]   # => 1 -# Get all keys as a list with "keys()".  -# We need to wrap the call in list() because we are getting back an iterable. We'll talk about those later. -# Note - Dictionary key ordering is not guaranteed. -# Your results might not match this exactly. +# Get all keys as an iterable with "keys()". We need to wrap the call in list() +# to turn it into a list. We'll talk about those later.  Note - Dictionary key +# ordering is not guaranteed. Your results might not match this exactly.  list(filled_dict.keys())   # => ["three", "two", "one"] -# Get all values as a list with "values()". Once again we need to wrap it in list() to get it out of the iterable. -# Note - Same as above regarding key ordering. +# Get all values as an iterable with "values()". Once again we need to wrap it +# in list() to get it out of the iterable. Note - Same as above regarding key +# ordering.  list(filled_dict.values())   # => [3, 2, 1] @@ -281,7 +281,7 @@ some_set = {1, 1, 2, 2, 3, 4}   # some_set is now {1, 2, 3, 4}  # Can set new variables to a set  filled_set = some_set -# Add one more item to the set  +# Add one more item to the set  filled_set.add(5)   # filled_set is now {1, 2, 3, 4, 5}  # Do set intersection with & @@ -328,7 +328,7 @@ for animal in ["dog", "cat", "mouse"]:      print("{} is a mammal".format(animal))  """ -"range(number)" returns a list of numbers +"range(number)" returns an iterable of numbers  from zero to the given number  prints:      0 @@ -340,7 +340,7 @@ for i in range(4):      print(i)  """ -"range(lower, upper)" returns a list of numbers +"range(lower, upper)" returns an iterable of numbers  from the lower number to the upper number  prints:      4 @@ -394,15 +394,15 @@ our_iterable[1]  # Raises a TypeError  our_iterator = iter(our_iterable)  # Our iterator is an object that can remember the state as we traverse through it. -# We get the next object by calling the __next__ function. -our_iterator.__next__()  #=> "one" +# We get the next object with "next()". +next(our_iterator)  #=> "one" -# It maintains state as we call __next__. -our_iterator.__next__()  #=> "two" -our_iterator.__next__()  #=> "three" +# It maintains state as we iterate. +next(our_iterator)  #=> "two" +next(our_iterator)  #=> "three"  # After the iterator has returned all of its data, it gives you a StopIterator Exception -our_iterator.__next__() # Raises StopIteration +next(our_iterator) # Raises StopIteration  # You can grab all the elements of an iterator by calling list() on it.  list(filled_dict.keys())  #=> Returns ["one", "two", "three"] @@ -458,14 +458,14 @@ all_the_args(**kwargs)   # equivalent to foo(a=3, b=4)  all_the_args(*args, **kwargs)   # equivalent to foo(1, 2, 3, 4, a=3, b=4) -# Function Scope                                                                 +# Function Scope  x = 5  def setX(num):      # Local var x not the same as global variable x      x = num # => 43      print (x) # => 43 -     +  def setGlobalX(num):      global x      print (x) # => 5 @@ -512,8 +512,8 @@ class Human(object):      # Basic initializer, this is called when this class is instantiated.      # Note that the double leading and trailing underscores denote objects      # or attributes that are used by python but that live in user-controlled -    # namespaces. Methods(or objects or attributes) like: __init__, __str__,  -    # __repr__ etc. are called magic methods (or sometimes called dunder methods)   +    # namespaces. Methods(or objects or attributes) like: __init__, __str__, +    # __repr__ etc. are called magic methods (or sometimes called dunder methods)      # You should not invent such names on your own.      def __init__(self, name):          # Assign the argument to the instance's name attribute @@ -600,7 +600,7 @@ def double_numbers(iterable):  # double_numbers.  # Note range is a generator too. Creating a list 1-900000000 would take lot of  # time to be made -# We use a trailing underscore in variable names when we want to use a name that  +# We use a trailing underscore in variable names when we want to use a name that  # would normally collide with a python keyword  range_ = range(1, 900000000)  # will double all numbers until a result >=30 found @@ -642,18 +642,18 @@ print(say(say_please=True))  # Can you buy me a beer? Please! I am poor :(  ### Free Online +* [Automate the Boring Stuff with Python](https://automatetheboringstuff.com)  * [Learn Python The Hard Way](http://learnpythonthehardway.org/book/)  * [Dive Into Python](http://www.diveintopython.net/)  * [Ideas for Python Projects](http://pythonpracticeprojects.com) -  * [The Official Docs](http://docs.python.org/3/)  * [Hitchhiker's Guide to Python](http://docs.python-guide.org/en/latest/)  * [A Crash Course in Python for Scientists](http://nbviewer.ipython.org/5920182)  * [Python Course](http://www.python-course.eu/index.php) +* [First Steps With Python](https://realpython.com/learn/python-first-steps/)  ### Dead Tree  * [Programming Python](http://www.amazon.com/gp/product/0596158106/ref=as_li_qf_sp_asin_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0596158106&linkCode=as2&tag=homebits04-20)  * [Dive Into Python](http://www.amazon.com/gp/product/1441413022/ref=as_li_tf_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=1441413022&linkCode=as2&tag=homebits04-20)  * [Python Essential Reference](http://www.amazon.com/gp/product/0672329786/ref=as_li_tf_tl?ie=UTF8&camp=1789&creative=9325&creativeASIN=0672329786&linkCode=as2&tag=homebits04-20) -  | 
