mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2025-08-12 01:34:19 +02:00
Incorporated feedback from lodin/adambard/others
Changes: - Added a few lines on using "is" to compare object identity. - Removed example about lists containing arbitrary values. - Removed example about assigning lambdas to variables. - Removed example about dictionary comprehensions. - Removed the additional explanation about 'self' - Added a clarification on modules.
This commit is contained in:
@@ -98,6 +98,10 @@ None #=> None
|
|||||||
"etc" is None #=> False
|
"etc" is None #=> False
|
||||||
None is None #=> True
|
None is None #=> True
|
||||||
|
|
||||||
|
# The 'is' operator tests for object identity. This isn't
|
||||||
|
# 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.
|
# None, 0, and empty strings/lists all evaluate to False.
|
||||||
# All other values are True
|
# All other values are True
|
||||||
0 == False #=> True
|
0 == False #=> True
|
||||||
@@ -169,9 +173,6 @@ li.extend(other_li) # Now li is [1, 2, 3, 4, 5, 6]
|
|||||||
# Examine the length with len
|
# Examine the length with len
|
||||||
len(li) #=> 6
|
len(li) #=> 6
|
||||||
|
|
||||||
# Note: lists can contain arbitrary values
|
|
||||||
li2 = [1, "Hello", [[], "Hi", 5,]]
|
|
||||||
|
|
||||||
# Tuples are like lists but are immutable.
|
# Tuples are like lists but are immutable.
|
||||||
tup = (1, 2, 3)
|
tup = (1, 2, 3)
|
||||||
tup[0] #=> 1
|
tup[0] #=> 1
|
||||||
@@ -375,8 +376,6 @@ add_10(3) #=> 13
|
|||||||
|
|
||||||
# There are also anonymous functions
|
# There are also anonymous functions
|
||||||
(lambda x: x > 2)(3) #=> True
|
(lambda x: x > 2)(3) #=> True
|
||||||
rectangle_area = lambda a, b: a * b
|
|
||||||
print rectangle_area(3, 4) #=> 12
|
|
||||||
|
|
||||||
# There are built-in higher order functions
|
# There are built-in higher order functions
|
||||||
map(add_10, [1,2,3]) #=> [11, 12, 13]
|
map(add_10, [1,2,3]) #=> [11, 12, 13]
|
||||||
@@ -386,9 +385,6 @@ filter(lambda x: x > 5, [3, 4, 5, 6, 7]) #=> [6, 7]
|
|||||||
[add_10(i) for i in [1, 2, 3]] #=> [11, 12, 13]
|
[add_10(i) for i in [1, 2, 3]] #=> [11, 12, 13]
|
||||||
[x for x in [3, 4, 5, 6, 7] if x > 5] #=> [6, 7]
|
[x for x in [3, 4, 5, 6, 7] if x > 5] #=> [6, 7]
|
||||||
|
|
||||||
# You can also use dictionary comprehensions
|
|
||||||
{i: add_10(i) for i in [1, 2, 3]} #=> {1: 11, 2: 12, 3: 13}
|
|
||||||
|
|
||||||
####################################################
|
####################################################
|
||||||
## 5. Classes
|
## 5. Classes
|
||||||
####################################################
|
####################################################
|
||||||
@@ -404,8 +400,7 @@ class Human(object):
|
|||||||
# Assign the argument to the instance's name attribute
|
# Assign the argument to the instance's name attribute
|
||||||
self.name = name
|
self.name = name
|
||||||
|
|
||||||
# An instance method. All methods take self as the first argument,
|
# An instance method. All methods take self as the first argument
|
||||||
# which refers to the instance of this class
|
|
||||||
def say(self, msg):
|
def say(self, msg):
|
||||||
return "%s: %s" % (self.name, msg)
|
return "%s: %s" % (self.name, msg)
|
||||||
|
|
||||||
@@ -462,7 +457,8 @@ import math as m
|
|||||||
math.sqrt(16) == m.sqrt(16) #=> True
|
math.sqrt(16) == m.sqrt(16) #=> True
|
||||||
|
|
||||||
# Python modules are just ordinary python files. You
|
# Python modules are just ordinary python files. You
|
||||||
# can write your own, and import them.
|
# can write your own, and import them. The name of the
|
||||||
|
# module is the same as the name of the file.
|
||||||
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
Reference in New Issue
Block a user