最新回答 / 慕粉3187994
函数的返回值不是s,而是s and len(s.strip())>0,完整写就是print filter(lambda s:s and len(s.strip())>0 , ['test', None, '', 'str', ' ', 'END'])
2019-01-23
最赞回答 / Awful_Leo
朋友你好,你的代码中,def new_fn(n)函数没有return语句,所以没有直接的返回值。所以会返回None。代码中3个def,2个return,所以有个函数没有返回值。你定义了3层函数,是不需要的。两层就可以了,第一层限定base=2,第二层传入str后,直接int()来计算就可以了。在函数定义阶段,并没有base从外到内传入的过程,只传了m和n,这也是报错的直接原因。你在倒数第二行中写的base,函数是无法识别的。设置默认参数值,类似(base = x) 这种形式,只能出现在定义函数的过程中,倒...
2019-01-23
最赞回答 / qq_夕阳秋风_0
def calc_prod(lst): def lazy_prod(): def f(x, y): return x * y return reduce(f, lst, 1) return lazy_prod f = calc_prod([1, 2, 3, 4]) print f()<...code...>
2019-01-22
最新回答 / 宝慕林6305465
我的理解为:def out(func): def add(): print("前功能添加") r = func()#调用函数func()结果,有print,没有返回值 print("后功能添加") return r#r为None return add@outdef f(): print("现功能添加")#这里相当于def f(): # ...
2019-01-20
最赞回答 / 慕粉3815269
因为计算机存数据时只有有限位数,根号2是无理数,因此保存的时候存在截断误差你再用这个截断误差去计算2自然会带有误差计算根号11也同理,但是反过来计算的时候得到的11误差出现的位数小于了python存数据的数据长度,所以你看起来计算的11是精确的实际上你把3.3166..那一串放到windows的计算器里面算平方,可以发现在小数点后15位出现了1
2019-01-18
最新回答 / 慕仰9142691
函数 函数是封装了一些独立的功能,可以直接调用,python内置了许多函数,同时可以自建函数来使用。方法 方法和函数类似,同样封装了独立的功能,但是方法是需要通过对象来调用的,表示针对这个对象要做的操作,使用时采用点方法。 以上是我认同的,如果有不对,请大佬明示
2019-01-17
最赞回答 / 瓶水相逢
import functools def c(s1,s2): if s1.upper()&ppes2.upper(): return -1 elif s1.upper()& rs2.upper(): return 1 else: return 0 sorted_ignore_case = functools.partial(sorted...
2019-01-12
最赞回答 / JefferyZ
函数执行是逐行执行,一行执行完再执行下一行。比如记录100米跑步的时间,发令枪响(t1),计时开始,然后跑步,越过终点线,计时结束(t2)。你跑步所用的时间在这里就t2 -t1。
2019-01-12