-
a, b = b, a + b
先算等号右边,再赋值给左边
查看全部 -
实例的方法就是在类中定义的函数,它的第一个参数永远是 self,指向调用该方法的实例本身,其他参数和一个普通函数是完全一样的:
查看全部 -
要定义关键字参数,使用 **kw;
除了可以直接使用self.name = 'xxx'设置一个属性外,还可以通过 setattr(self, 'name', 'xxx') 设置属性。
kw是字典,iteritems()用于遍历字典kw,而setattr(self, k, v)就等价于self.k = v
查看全部 -
任何对象,只要有read()方法,就称为File-like Object,都可以传给json.load()。
查看全部 -
一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。
函数super(Student, self)将返回当前类继承的父类,即 Person ,然后调用__init__()方法,注意self参数已在super()中传入,在__init__()中将隐式传递,不需要写出(也不能写)。
查看全部 -
在定义 Person 类时,__init__()方法为每个实例都统一加上属性
查看全部 -
python 中filter() 函数
查看全部 -
python 中reduce()函数
查看全部 -
cmp返回的是-1,1,0。sorted在接收cmp返回的-1时,将比较的两个元素(x,y)里的x放前面;当cmp返回的1时,将比较的两个元素(x,y)里的y放前面
查看全部 -
**kw这里其实关注的是**这两个代表着关键字参数,kw是可以我们自己命名的,一个*表示的是可变参数,可变参数允许你传入0个或任意个参数,这些可变参数在函数调用时自动组装为一个tuple,而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict for k, v in kw.iteritems(): 这里的作用是循环,赋值,因为KW是两个**的,所以在P那一列赋值的时候必须使用age=18,这样的格式age就相当于name,18就相当于'Male',然后系统会检查这个赋值后,后面还有没有,有的话继续赋值,但是都必须符合那个规格来。 setattr(self, k, v) 这里的作用是在实列__init__中添加一个age,在给它赋值18.
查看全部 -
>>> map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]) [1, 4, 9, 16, 25, 36, 49, 64, 81]
通过对比可以看出,匿名函数 lambda x: x * x 实际上就是:
def f(x): return x * x
关键字lambda 表示匿名函数,冒号前面的 x 表示函数参数。
查看全部 -
map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f 依次作用在 list 的每个元素上,得到一个新的 list 并返回。
查看全部 -
map()函数不改变原有的 list,而是返回一个新的 list。
查看全部 -
加油查看全部
-
在类中定义了__cmp__函数。。。
类里的大小与实例传入的大小,实例中的s越大,返回1,否则返回-1
查看全部
举报