1
0
mirror of https://github.com/adambard/learnxinyminutes-docs.git synced 2025-08-13 02:04:23 +02:00
Added two minor changes in integer division to make it clear
This commit is contained in:
Evgeniy Ginzburg
2014-08-06 23:45:44 +03:00
4 changed files with 39 additions and 17 deletions

View File

@@ -441,7 +441,10 @@ class Human(object):
# A class attribute. It is shared by all instances of this class
species = "H. sapiens"
# Basic initializer
# 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. You should not invent such names on your own.
def __init__(self, name):
# Assign the argument to the instance's name attribute
self.name = name
@@ -528,10 +531,12 @@ def double_numbers(iterable):
# Note xrange is a generator that does the same thing range does.
# Creating a list 1-900000000 would take lot of time and space to be made.
# xrange creates an xrange generator object instead of creating the entire list like range does.
_xrange = xrange(1, 900000000)
# We use a trailing underscore in variable names when we want to use a name that
# would normally collide with a python keyword
xrange_ = xrange(1, 900000000)
# will double all numbers until a result >=30 found
for i in double_numbers(_xrange):
for i in double_numbers(xrange_):
print(i)
if i >= 30:
break
@@ -544,10 +549,10 @@ for i in double_numbers(_xrange):
from functools import wraps
def beg(_say):
@wraps(_say)
def beg(target_function):
@wraps(target_function)
def wrapper(*args, **kwargs):
msg, say_please = _say(*args, **kwargs)
msg, say_please = target_function(*args, **kwargs)
if say_please:
return "{} {}".format(msg, "Please! I am poor :(")
return msg