最新回答 / 慕用1366169
def prod(x, y): return x * y<...code...>def calc_prod(lst): def calc(num): lst.append(num) return reduce(prod, lst) return calcf = calc_prod([1, 2, 3, 4])print f(5)能打印出:120
2019-10-08
sorted(iterable, cmp=None, key=None, reverse=False)
iterable -可迭代对象。
cmp -比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,大于则返回1,小于则返回-1,等于则返回0。
key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse - 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
其实定义的reversed_cmp就是cmp内容,按大于返回-1小于返回1,等于返回0。
iterable -可迭代对象。
cmp -比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,大于则返回1,小于则返回-1,等于则返回0。
key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse - 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
其实定义的reversed_cmp就是cmp内容,按大于返回-1小于返回1,等于返回0。
2019-10-08
def format_name(s):
return s.title()
print map(format_name, ['adam', 'LISA', 'barT'])
return s.title()
print map(format_name, ['adam', 'LISA', 'barT'])
2019-10-08
# Python 3中,Python3.x取消了 cmp参数,需使用functools中的cmp_to_key,即在开头加上
from functools import cmp_to_key
def ......
print(sorted(['bob', 'about', 'Zoo', 'Credit'], key=cmp_to_key(cmp_ignore_case)))
结果:['about', 'bob', 'Credit', 'Zoo']
from functools import cmp_to_key
def ......
print(sorted(['bob', 'about', 'Zoo', 'Credit'], key=cmp_to_key(cmp_ignore_case)))
结果:['about', 'bob', 'Credit', 'Zoo']
2019-10-07
最新回答 / 疯狂的王
property的本质是可以将类方法变成像实例属性一样调用所以当你不加property的时候,直接打印返回的是一个类方法对象加上()表示调用了该方法, 打印出来的是该函数的返回值
2019-10-03
最新回答 / weixin_慕村8138814
用于需要给现有方法添加逻辑,特别需要给多个现有方法添加的通用逻辑。比如希望在调用某些方法前添加日志信息,或者检查权限等等,这些逻辑都可以封装在decorator中实现,并装饰于有需要的方法上。这样做的好处在于不需要改变现有方法的逻辑,还可以避免代码的重复。
2019-09-30
def f(x, y):
return x * y
print reduce(f, [2, 4, 5, 7, 12])
return x * y
print reduce(f, [2, 4, 5, 7, 12])
2019-09-27