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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
python真的好灵活。。。

最新回答 / 慕粉3505573
已经解决了,在引用之前,必须先定义log,即 def log(x):。。。。。。 课程里面的那部分
import time

def performance(f):
def fn(x):
print 'call factorial() in'
return f(x)
return fn
@performance
def factorial(n):
return reduce(lambda x,y: x*y, range(1, n+1))

print factorial(10)

已采纳回答 / qq_城南以南_03468985
key指定一个接收一个参数的函数,这个函数用于从每个元素中提取一个用于比较的关键字。默认值为None。key参数的值应该是一个函数,这个函数接收一个参数并且返回一个用于比较的关键字。所以只用传入函数的函数名就可以了 所以用str.lower str.lower()是调用了函数就像装饰器传入函数时 decorator(f) 而不是decorator(f())
print filter(lambda s: s and len(s.strip())>0, ['test', none, '', 'str', ' ', 'end'])
有点意思了,看了三遍才。。。
print sorted(['bob', 'about', 'Zoo', 'Credit'],key=str.lower)
答案判定好死板啊!要写成
return "(Student:" + self.name + ", " + self.gender + ", " + str(self.score) + ")"
这种模式才给过
def prod(x, y):
return x*y

print reduce(prod, [2, 4, 5, 7, 12])

已采纳回答 / 梦到慈世平
我的理解是,之前没有使用m==i时,def f(i)中传入的i是对象i的引用,而i每次递增会导致i改变,最后f1,f2,f3 = count()使得3者返回都为计算i*i的函数对象,且i相同,则执行f1() f2()  f3()结果也相同m==i使得每次传入参数时,新建个局部变量m,作用域在f函数内,这样3次的m都是各自函数对象的局部变量,指向不同的int型对象,实现了保存当时的i值,则结果也被改变了函数f的确时带一个参数,调用f1 f2 f3 = count()时,count内部写死了给f传入i参数
雪崩,哎,一脸蒙蔽
import math

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

print add(25, 9, math.sqrt)
C# 不懂多重继承,我们用的是接口~
class Person(object):

__count = 0
def __init__(self, name):
self.name=name
Person.__count=Person.__count+1
print Person.__count

p1 = Person('Bob')


p2 = Person('Alice')
try:
print Person.__count
except AttributeError:
print ('attributeError')
如果类可以随便添加属性,那就没法管了
这个计算最大公约数的算法我自己根本就想不出来的。。。
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消