最新回答 / boyideyt
<...code...>print f() 表示打印f函数的返回值,print f 是打印f函数这个对象。如果出错了就看报错信息。。。个人理解:在已有a函数时,若想在a函数上进行改进,并定义新函数,就可将返回值生成一个新函数。在需要使用时再加()进行使用。另外延迟函数还可以用在多值参数需要进行循环的场合。
2019-08-25
https://www.cnblogs.com/linxiyue/p/11224322.html很详细的讲解,装饰器接收原函数,返回的是新函数
2019-08-25
最新回答 / 慕哥6575325
1reversed_cmp函数 理解为对两个数排序(且生成排序好列表---虽然这个函数里没做这个操作,但是要做是不是很容易)2soretd 函数将reversed_cmp 作用的对象从2个数,变成了一个列表3sorted和reversed_cmp之间的联系(接口--指定格式-1 0 1)实际工作流程(推测的):36和5比较生成[36,5]这时候12进来 与列表比较 有可能 从左往右比较 比36小,在36右边,比5大,停止,不往后继续比较也可能 从右往左比较................
2019-08-24
看不懂,我先去菜鸟教程学啦
https://www.runoob.com/python3/python3-class.html
https://www.runoob.com/python3/python3-class.html
2019-08-23
def calc_prod(lst):
def h():
return reduce(lambda x,y:x*y,lst)
return h
f = calc_prod([1, 2, 3, 4])
print f()
三层太晕了,两层好一点
def h():
return reduce(lambda x,y:x*y,lst)
return h
f = calc_prod([1, 2, 3, 4])
print f()
三层太晕了,两层好一点
2019-08-22
class Fib(object):
def __call__(self,num):
self.fib=[]
if num==0:
self.fib=[]
elif num==1:
self.fib=[0]
elif num==2:
self.fib=[0,1]
else:
self.fib=[0,1]
for i in range(2,num):
def __call__(self,num):
self.fib=[]
if num==0:
self.fib=[]
elif num==1:
self.fib=[0]
elif num==2:
self.fib=[0,1]
else:
self.fib=[0,1]
for i in range(2,num):
2019-08-21
import math
def is_sqr(x):
return math.sqrt(x)%1==0
print filter(is_sqr, range(1, 101))
def is_sqr(x):
return math.sqrt(x)%1==0
print filter(is_sqr, range(1, 101))
2019-08-21
def __mul__(self, r):
return Rational(self.p*r.p,self.q*r.q)
def __div__(self, r):
return Rational(self.p*r.q,self.q*r.p)
def __str__(self):
g=gcd(self.p,self.q)
return '%s/%s'%(self.p/g,self.q/g)
return Rational(self.p*r.p,self.q*r.q)
def __div__(self, r):
return Rational(self.p*r.q,self.q*r.p)
def __str__(self):
g=gcd(self.p,self.q)
return '%s/%s'%(self.p/g,self.q/g)
2019-08-21
def gcd(a,b):
if b==0:
return a
return gcd(b,a%b)
class Rational(object):
def __init__(self, p, q):
self.p = p
self.q = q
def __add__(self, r):
return Rational(self.p * r.q + self.q * r.p, self.q * r.q)
if b==0:
return a
return gcd(b,a%b)
class Rational(object):
def __init__(self, p, q):
self.p = p
self.q = q
def __add__(self, r):
return Rational(self.p * r.q + self.q * r.p, self.q * r.q)
2019-08-21
from functools import reduce
def prod(x, y):
return x*y
print(reduce(prod, [2, 4, 5, 7, 12]))
def prod(x, y):
return x*y
print(reduce(prod, [2, 4, 5, 7, 12]))
2019-08-21
def format_name(s):
return s[0].upper()+s[1:].lower()
print(list(map(format_name, ['adam', 'LISA', 'barT'])))
return s[0].upper()+s[1:].lower()
print(list(map(format_name, ['adam', 'LISA', 'barT'])))
2019-08-21
def __
self.fib=[]
if num==0:
self.fib=[]
elif num==1:
self.fib=[0]
elif num==2:
self.fib=[0,1]
else:
self.fib=[0,1]
for i in range(2,num):
self.fib.append(self.fib[i-2]+self.fib[i-1])
self.fib=[]
if num==0:
self.fib=[]
elif num==1:
self.fib=[0]
elif num==2:
self.fib=[0,1]
else:
self.fib=[0,1]
for i in range(2,num):
self.fib.append(self.fib[i-2]+self.fib[i-1])
2019-08-21