为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
百度找的求平方根类 math.sqrt
def performance(f):
def n(*args,**kwargs):
startime = time.time()
res = f(*args,**kwargs)
print'call',f.__name__+'()','in',time.time()-startime
return res
return n
def calc_prod(lst):
def cj():
i=1
for a in lst:
i=i*a
return i
return cj

f = calc_prod([1, 2, 3, 4])
print f()
return i
return he

f = calc_prod([1, 2, 3, 4])
print f()
import math

def add(x, y, f):
return f(x) + f(y)
def gh(z):
return z**0.5
print add(25, 9, gh)
print filter(lambda s:s and len(s.strip())>0,['test', None, '', 'str', ' ', 'END'])
def count():
fs = []
for i in range(1, 4):
def c(m=i):
return m*m
fs.append(c)
return fs

f1, f2, f3 = count()
print f1(), f2(), f3()
import math
def gen(x):
y=0.0
while(1):
y=y+1
if y*y==x:
break
return y

def add(x, y, f):
return f(x) + f(y)

print add(25,9, gen)
def format_name(s):
i=s[0].upper()
i=i+s[1:].lower()
return i

print map(format_name, ['adam', 'LISA', 'barT'])

最赞回答 / 慕少9221509
在Python 3里,reduce() 函数已经被从全局名字空间里移除了,它现在被放置在fucntools 模块里使用前需要先引用: from functools import reduce

已采纳回答 / 一撮学渣
我找到了一个方法,可以在p3里解决你的问题。<...code...>如果你有更好的方法,欢迎告之~~
def __cmp__(self, s):
if self.score&gt;s.score:
return -1
elif self.score&lt;s.score:
return 1
else:
if self.name&lt;s.name:
return -1
elif self.name&gt;s.name:
return 1
else:
return 0
f1, f2, f3 = count() count()的返回值是一个list的,所以f1,f2,f3也应该是list,f1,f2,f3是list,里面的元素是指向函数的变量,printf f1( ),f2( ),f3( ) 这条语句是不是可以这么理解,打印f1中元素再加上( )就是调用l函数
def f1(x,y):
return x*y

def calc_prod(lst):
def cal():
return reduce(f1,lst)
return cal

f = calc_prod([1, 2, 3, 4])
print f()
交互式的学习效果好。
def hanshu1(list):
def hanshu2(x,y):
return x*y
return reduce(hanshu2, list)
print hanshu1(range(1,5))
def f(s):
return s[0].upper()+s[1:].lower()

print map(f, [&#039;adam&#039;, &#039;LISA&#039;, &#039;barT&#039;])
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消