已采纳回答 / RyanCode
.strip()方法的作用是把字符串头尾的指定字符去掉。比如:s = “0000asdfx0000sdgfarg000000”s1 = s.strip(0)print s1//asdfx0000sdgfarg不管头尾有几个0都会去掉,中间的不会
2017-09-30
已采纳回答 / SCEC3944754
g1 = new_fn(f1)传进来 f1 函数, g1现在就是fn(x), x=5 此时 f 就是 f1, 方法 fn 传进来 x 参数, f(x)就执行了f1(x)
2017-09-21
已采纳回答 / JPinsz
返回值也没其他意思,就是对应的函数返回的值,当调用该函数时就会得到这个值。如下例:def test(): print 'this is a test func' return 'test'当使用test()调用test()函数时,将会打印“this is a test func”,虽然获取到函数返回的值‘test’,不是并不会打印出来 3.当使用print test()时,就会打印出‘this is a test func’还有 'test'
2017-09-21
已采纳回答 / 我到前面探探路
<...code...><...code...>以上两段代码等价的,下面的好理解点,作用都是将变量 i 用 j 储存下来,确保了在函数 f 返回后不变。count() 返回的是列表 fs ,此时 fs 中包含了3三个函数 f。也就是说,f1(),f2(),f3()调用的是对应的f(1),f(2),f(3)。#个人理解,不对的欢迎指出
2017-09-20
已采纳回答 / 慕先生1519954
分数是在0到100分之内才是有效的,比如一不小心输错输了个1000分,明显是错的,但是操作会不管你输入的值是多少都直接把这个值赋给属性,不会报错,所以要根据实际的逻辑对分数添加限制,当输入的分数有错时给出提示
2017-09-20
已采纳回答 / qq_冷月秋风_0
你理解错了。你把Person.how_mang()改成了p1.how_mang()不是类方法获得了实例变量。而是实例方法获得了类属性。python支持类和实例都可以使用类方法的。因为类属性变化之后是唯一的,所以实例方法获取之后输出的结果会和类方法输出的一样。
2017-09-17
已采纳回答 / leibo
calc_prod返回了一个不带参数的函数lazy_prod(), lazy_prod()这个函数返回了一个经过reduce()计算后的结果,就是最终计算出来的值。f = calc_prod([1, 2, 3, 4])的执行结果是函数lazy_prod的引用,也就是所f就是calc_prod的返回值,是一个函数。最后f()才真正调用了上一步返回的函数,执行了reduce并返回最后的结果。这里其实用到的就是闭包,函数内部的函数可以访问外部函数的局部变量,包括参数。 并且返回一个新的函数。
2017-09-17
已采纳回答 / 飞翔的鱼a
Fib()当然是实例化Fib类的对象啊,只是Fib没有需要初始化的属性,所以就直接用一个双括号。然后f就是一个Fib的对象,f(10)默认就是调用__call__方法并且传入参数
2017-09-14
已采纳回答 / qq_花开半夏_2
第一行,导入模块time第二行,定义一个叫performance的函数,接收一个参数第三行,定义一个函数,接收任何参数第四行,调用time模块的time方法,得到系统当前时间的时间戳第五行,调用函数f,这个f函数就是传递给performance函数的参数,且f函数接收任何参数第六行,再次调用time模块的time方法,获得当前时间的时间戳第七行,打印调用的函数名,和调用函数的前后时间差(用到了字符串的占位符,可看一下python中的格式化字符串)第八行,返回f函数的调用结果第九行,返回新定义的函数fn综上...
2017-09-14
已采纳回答 / 飞翔的鱼a
你把你自己改的f=calc_prod([1,3,5,6,9]) 换成任务提供的 f = calc_prod([1, 2, 3, 4])就可以,你只需要补全问号处的代码,不需要修改别的地方
2017-09-14