最赞回答 / Devme
因为self表示引用这个方法的实例,而这个count是类的属性,如果你用实例来修改,只会另外为它自己创建一个count属性。而不会修改类的属性。实例属性是独立的。
2020-03-12
最新回答 / weixin_慕哥0152991
sorted()可以传入特定的函数,实现自定义的排序。二这个特定的函数要求是要传入两个用来比较的元素。所以,示例中为p1.name, p2.name。你也可以换成x,y。 sorted(L1,lambda x,y comp(x,y))。注:cmp()函数用于比较两个对象,如果x<y,返回-1,x=y返回0,x>y返回1。
2020-03-11
最新回答 / kuo先生
def cmp_ignore_case(s1, s2): if s1.lower()<s2.lower(): return -1 if s1.lower()>s2.lower(): return 1 return 0print sorted(['bob', 'about', 'Zoo', 'Credit'],cmp_ignore_case)
2020-03-10
最赞回答 / Archer_ll
对于第一个问题:可以解析代码的执行过程@decorator('ms') 其实就等于factorial = decorator('ms')(factorial)factorial = decorator('ms')(factorial)这句代码 执行是先执行decorator('ms')按返回 su函数名-->接着执行su(f) 返回ssu函数名 到这里就等于 factorial=ssu之后调用factorial 其实是调用ssu 即factorial(10) ->ssu(10)而在...
2020-03-09
最新回答 / weixin_慕丝0407445
是不是可以这么理解, 最后一行的 factorial(10) 其实已经不是原来的factorial()了,而是装饰过的factorial()
2020-03-09
最赞回答 / 橡果国际oil
class School(Student, Teacher): def __init__(self, name, sex, age, subject, score, mcl): super(School, self).__init__(name, sex, age, score) super(School, self).__init__(name, sex, age, subject)...
2020-03-08
最新回答 / weixin_慕瓜8086110
判断一个数的平方根是否是整数:math.sqrt(x)==int(math.sqrt(x))比如:1.5==int(1.5)为False你的这个x==r*r存在不确定性,一个数的平方根是浮点型,浮点型是一种不准确的数值,有时候根乘以根可能和这个数相等,有时候是无限接近。你的算法中,11和14的平方根相乘正好等于11或者14,所以为True。如果换其他机器或环境运行,可能又为False。我是这样理解的。你可以查相关的资料。
2020-03-07
最赞回答 / qq_小猫童鞋_0
应该这么说吧,两个score的区别是:(1)调用的装饰器名称不同(2)参数不同。第一个score是获取属性,调用的@property装饰器,里面肯定有做些处理的。第二个是用于设置属性的score函数,调用的getscore.setter装饰器。其实装饰器就是个方法而已啦最主要是两个函数的参数不同.当然你也可以用getscore,setscore来命名啊,不过按照p.score这种的,看上去代码更简洁更容易读懂吧
2020-03-04