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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
学习人数
综合评分9.20
575人评价 查看评价
9.6 内容实用
9.0 简洁易懂
9.0 逻辑清晰
Difference between __str__ and __repr__ in Python:
http://stackoverflow.com/questions/1436703/difference-between-str-and-repr-in-python
方法也是属性.
r' '
raw 字符串,里面的字符就不需要转义
method和function的区别:
A method is on an object.
A function is independent of an object.
不常见为什么要写...
实例方法:搁其它语言,叫获取器,修改器之类的 getter ,setter
Python不支持 var++ 的方式,实现+1
pip install web.py
pypi.python..org 可以找模块
decorator 传的参数('ms')就要用到闭包的功能,将参数生存周期改变一下.
为什么用3层嵌套?因为python奇怪的参数生存范围?
'@'后面加的是decorator的名字

要改什么函数,就在那个函数的代码上加一行: @decorator
def calc_prod(lst):
def lazy_sum():
return reduce((lambda x,y: x*y),lst)
return lazy_sum

f = calc_prod([1, 2, 3, 4])
print f()
ambda是一个匿名函数,x,y是他的参数,x*y是他的返回值,按着你下面那么写的话,函数只使用以此所以用匿名函数可以节省内存中定义变量的空间,而且能是程序更简洁
reduce是横向逐个元素进行运算
【错误的说法】一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。
在python中继承中的一些特点:
2.在调用基类的方法时,需要加上基类的类名前缀,且需要带上self参数变量。区别于在类中调用普通函数时并不需要带上self参数
所以:Person.__init__(self,name, gender)的写法是合理的
import math

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

print add(25, 9, math.sqrt)
if self.score<s.score:
return 1
if self.score>s.score:
return -1
if self.score==s.score:
return cmp(self.name,s.name)
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消