为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
python进阶_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 实例属性每个实例各自拥有,互相独立,而类属性有且只有一份。
    查看全部
  • 可见,只有以双下划线开头的"__job"不能直接被外部访问。 但是,如果一个属性以"__xxx__"的形式定义,那它又可以被外部访问了,以"__xxx__"定义的属性在Python的类中被称为特殊属性,有很多预定义的特殊属性可以使用,通常我们不要把普通属性用"__xxx__"定义。 以单下划线开头的属性"_xxx"虽然也可以被外部访问,但是,按照习惯,他们不应该被外部访问。
    查看全部
  • 要定义关键字参数,使用 **kw; 除了可以直接使用self.name = 'xxx'设置一个属性外,还可以通过 setattr(self, 'name', 'xxx') 设置属性。 参考代码: class Person(object): def __init__(self, name, gender, birth, **kw): self.name = name self.gender = gender self.birth = birth for k, v in kw.iteritems(): setattr(self, k, v) xiaoming = Person('Xiao Ming', 'Male', '1990-1-1', job='Student') print xiaoming.name print xiaoming.job
    查看全部
  • *args是非关键字参数,用于元组,**kw是关键字参数,用于字典
    查看全部
  • 要打印实例,直接使用print语句; 要比较两个实例是否相等,用==操作符。 参考代码: class Person(object): pass xiaoming = Person() xiaohong = Person() print xiaoming print xiaohong print xiaoming == xiaohong
    查看全部
  • 按照 Python 的编程习惯,类名以大写字母开头,紧接着是(object),表示该类是从哪个类继承下来的。类的继承将在后面的章节讲解,现在我们只需要简单地从object类继承。 有了Person类的定义,就可以创建出具体的xiaoming、xiaohong等实例。创建实例使用 类名+(),类似函数调用的形式创建:
    查看全部
  • 求解两个数的最大公约数: def gcd(a,b): if b==0: return a return gcd(b,a%b)
    查看全部
  • 其中__add__()方法中的计算即为分子分母有理化,即分子为分子分母交叉相乘相加,分母为两个分母的相乘
    查看全部
  • 可以理解@为当前函数目的地,比如定义factorial()前加了@log,那么只要我调用factoria函数,它就自动去搜寻log并把自己传入log函数。而类似log这种装饰器就是加了自动寻径的高阶函数嘛,里面装的就是你要重复利用的代码块。
    查看全部
  • 模块管理工具
    查看全部
  • 例题解释: r1+r2 其中r1中(p=1,q=3) r2中(p=1,q=2) 但是此时使用了加号,即调用了程序中__add__()方法 此时对于主动加数为(self.p ,self.q) 被动加数为(r.p,r.q) 可知r1为主动加数,r2为被动加数 所以:(self.p=1,self.q=3 r.p=1,r.q=2) 根据__add__()方法可知 r1+r2 结果为 Rational(5,6) 此时self.p=5,self.q=6 print r1+r2 使用print 即自动调用了 __str__()方法 此时返回结果是self.p/self.q 即最终返回结果是5/6
    查看全部
  • 带参数的log函数首先返回一个decorator函数,再让这个decorator函数接收my_func并返回新函数:
    查看全部
  • 还是不懂
    查看全部
    0 采集 收起 来源:python中闭包

    2017-09-13

  • 下一步学习
    查看全部
    0 采集 收起 来源:课程总结

    2017-09-13

  • 下一步学习
    查看全部
    0 采集 收起 来源:课程总结

    2017-09-13

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类
友情提示:

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