已采纳回答 / 努力提升
区别很大。s.upper()意思是调用s的upper()函数;math.sqrt(x)意思是调用math的sqrt()函数,而x是参数,x通过sqrt()函数的计算然后返回相应的数值。
2016-01-07
最新回答 / lc云泽
print 调用的是__str__方法,应该从__str__函数中找返回值;而return len()是__len__方法的返回值,所以需要在外部调用__len__才可以
2016-01-06
已采纳回答 / sdd
class Person(object): def __init__(self, name, score): self.name = name self.__score = scorep = Person('Bob', 59)print p.nametry: print p.__scoreexcept: print 'attributeerror'
2016-01-06
已采纳回答 / JayD
你可以理解为path是包os中的一个模块,想要使用path中的函数时可以只导入os包:import os 也可以导入path模块from os import path 区别在于使用的时候一个需要 os.path.函数名 另一个只需要 path.函数名
2016-01-04
已采纳回答 / johnljc
i就是一个变量名,语法:for 【变量】in 【集合】,for语句是用来遍历range生成的集合,for每循环一次就会把i指向集合中的一个元素,通过i就能调用该元素。基础课有介绍<...code...>结果就是把集合元素都输出。其实我不知道你到底问什么。。。。
2016-01-04
最赞回答 / 叶重楼
装饰器使用@是一个语法糖,是f=log(f)的简写,而且这个语法只能使用在函数定义处。如果你想在系统函数上使用装饰器,可以直接写<...code...> 你可以看看我的验证:<...code...>
2016-01-03
最赞回答 / flyeek
*args 实际上处理为tuple参考如下代码:class Person(object): def __init__(*args, **kw): print isinstance(args, tuple) args[0].name = args[1] args[0].gender = args[2] for k, v in kw.iteritems(): setattr(args[0], k, v)p = Person('...
2016-01-03
已采纳回答 / Missie
print Person.__count可以改成:try: print Person.__countexcept: print 'attributeerror'就能解决了呢
2016-01-03
最赞回答 / 1984的橘子和柠檬_0
把函数名看成一个指针变量会好理解一些。。fs.append(f)实际上是把f这个指针变量添到了fs列表里,并没有真的调用f函数,然后一直循环到i=3。f1= count()是把f指针变量赋给f1。。当执行到print f1()时,f1指向函数f,这个时候才调用了f函数,但是这时i等于3了。f只是一个变量,f()才是调用了函数
2015-12-31
最赞回答 / 小明在努力
count()函数返回的是一个list 里面有三个值f1, f2, f3 = count()的意思是将list的三个值分别赋值给f1 f2 f3如果改变了list元素的个数 再运行f1, f2, f3 = count()时不行的 可以试下
2015-12-31
最赞回答 / Breaker_CHN
分别解答你的两个问.并未对j赋值, j的值是如何获得的?考察函数定义:<...code...>上面就是j赋值问题的解析.另外一问, f1, f2, f3 = count() 调用方式的理解?首先, 考察count()的返回值: fs列表fs列表存...
2015-12-31