-
我们在 class 中定义的实例方法其实也是属性,它实际上是一个函数对象:查看全部
-
sorted(iterable[,cmp,[,key[,reverse=True]]]) 作用:Return a new sorted list from the items in iterable. 第一个参数是一个iterable,返回值是一个对iterable中元素进行排序后的列表(list)。 可选的参数有三个,cmp、key和reverse。 1)cmp指定一个定制的比较函数,这个函数接收两个参数(iterable的元素),如果第一个参数小于第二个参数,返回一个负数;如果第一个参数等于第二个参数,返回零;如果第一个参数大于第二个参数,返回一个正数。默认值为None。 2)key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。 3)reverse是一个布尔值。如果设置为True,列表元素将被倒序排列。 通常来说,key和reverse比一个等价的cmp函数处理速度要快。这是因为对于每个列表元素,cmp都会被调用多次,而key和reverse只被调用一次。查看全部
-
f.__name__:__name__是一个特殊方法,存储的是函数的名称,每一个函数都会自动有这个方法查看全部
-
比较晕查看全部
-
可以接受函数作为参数,可以返回函数查看全部
-
ef cmp_ignore_case(s1, s2): if s1.upper()>s2.upper(): return 1 if s1.upper()<s2.upper(): return -1 return 0 print sorted(['bob', 'about', 'Zoo', 'Credit'], cmp_ignore_case)查看全部
-
要表示有理数,可以用一个Rational类来表示: class Rational(object): def __init__(self, p, q): self.p = p self.q = q查看全部
-
**kw是关键字参数,用于字典 iteritems()用于字典kw的遍历 setattr(self, k, v)就等价于self.k = v 综上就是,遍历dict kw 中的属性,给每个属性设置了属性值查看全部
-
//:相当于floor函数,x=a//b,x取不大于结果的最大整数,-1/2.0=-0.5,-1//2结果取不大于-0.5的最大整数,即-1查看全部
-
python中,函数(方法)并不是依附与类才能存在。函数并不只是在类中定义。这种直接在模块中而不是类中定义的函数(方法),叫做函数。 而 方法(method),是依附于类 的,他们定义在类中,是属于类的,但是他们本质上,还是一个函数。方法的第一个参数不一定必须是self。 这么说吧,凡是def foo()这种,都是函数,在类中定义的函数,就是方法。 总结: 方法:类内普通方法,类方法 函数:普通函数,类内的静态方法查看全部
-
__slots__的目的是限制当前类所能拥有的属性,如果不需要添加任意动态的属性,使用__slots__也能节省内存。查看全部
-
实例的方法就是在类中定义的函数,它的第一个参数永远是 self,指向调用该方法的实例本身,其他参数和一个普通函数是完全一样的: 在实例方法内部,可以访问所有实例属性,这样,如果外部需要访问私有属性,可以通过方法调用获得,这种数据封装的形式除了能保护内部数据一致性外,还可以简化外部调用的难度。 调用实例方法必须在实例上调用:查看全部
-
可见,当实例属性和类属性重名时,实例属性优先级高,它将屏蔽掉对类属性的访问。 可见,千万不要在实例上修改类属性,它实际上并没有修改类属性,而是给实例绑定了一个实例属性。查看全部
-
_xxx 可以在子类中使用。 __xxx 不可以在子类中使用。查看全部
-
如果对一组 Student 类的实例排序时,就必须提供我们自己的特殊方法 __cmp__()查看全部
举报
0/150
提交
取消