最新回答 / 精慕门8122441
def count(): fs = [] for i in range(1, 4): def f(j): def g(): return j*j return g r=f(i) fs.append(r) return fsf1, f2, f3 = count()print f1(), f2(), f3()需要用匿名函数再包装下
2018-07-24
最新回答 / 慕仔5308971
>>>f = open('a.txt', 'r')
>>>f.read(5)
'hello'
read( )是读文件的方法,括号内填入要读取的字符数,这里填写的字符数是5,如果填写的是1那么输出的就应该是‘h’。原地址:http://www.iplaypy.com/sys/open.html希望对你有帮助。
2018-07-24
最新回答 / 秋山在此
import mathdef is_sqr(x): return math.sqrt(x)%1==0print filter(is_sqr, range(1, 101))
2018-07-24
最新回答 / 蓝蓝蓝蓝调_
先import functools然后在def fa()上面加一行@functools.wraps(f)参考https://www.imooc.com/code/6067
2018-07-24
最新回答 / eddie5010
f = Fib(10)创建的是一个对象f,print打印的是对象的信息;而print f(10)是调用f对象的方法,即重写的__call__() 方法。
2018-07-23
最新回答 / 疯狂的王
print filter(lambda s: s if len(s.strip()) > 0, ['test', None, '', 'str', ' ', 'END'])这里不能用if , 这种写法的逻辑是if如果满足为真就返回s。但是filter()函数里面包含两个参数,第一个是一个判断语句,第二个是一个list如果第一个参数返回了s,肯定出现语法错误
2018-07-23
最新回答 / 拾荒丶
老师 ppt上的是return f(x) 因为f1函数在f1=new_fn(f1)的时候已经作为参数传入了new_fn(f)这个函数即参数f就是你传入的f1函数
2018-07-22
最新回答 / Icci
import mathdef is_sqr(x): return x and math.sqrt(x)%1==0 # and 后的语句作为判断该数(即x)是否为整数print filter(is_sqr,range(1,101))
2018-07-20
最赞回答 / Lucien_Liu_0001
s and len(s.strip()) 你需要先清楚 and 这个逻辑运算符的作用,is_not_empty 方法 返回的是这个逻辑运算的结果,当 s 为空字符时(即'')那么 and 前面的 s 为空字符会直接返回False,如果 s 不为空那么再判断 and 后面的 len(s.strip()) ,所以最终结果一定是一个值,而不是两个值。主要因为,Python把0、空字符串''和None看成 False
2018-07-20
最赞回答 / qq_终与你_1
我是这么理解的啊,新手交流,不知道理解的对不对fs是三个返回函数的集合,f1, f2, f3 = count()是将f1,f2,f3指向fs的三个值(也就是f()函数),f1的时候i是1,但是返回的值是i*i(没有计算),f2的时候i是2,返回的仍然是i*i,f3的时候i是3,返回的还是i*i,这时候i已经是3了,等到print f1(), f2(), f3()的时候,f()函数开始计算值,只能返回3*3了,所以结果就是,9,9,9
2018-07-20