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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 实例的方法就是在类中定义的函数,它的第一个参数永远是 self,指向调用该方法的实例本身,其他参数和一个普通函数是完全一样的:

    class Person(object):
    
        def __init__(self, name):
            self.__name = name
    
        def get_name(self):
            return self.__name

    get_name(self) 就是一个实例方法,它的第一个参数是self。__init__(self, name)其实也可看做是一个特殊的实例方法。


    查看全部
  • 这里对2维矩阵的理解至关重要#到底要我用什么方式注释才能真正屏蔽呢

    查看全部
  • 一个实例的私有属性就是以__开头的属性,无法被外部访问,那这些属性定义有什么用?

    虽然私有属性无法从外部访问,但是,从类的内部是可以访问的。除了可以定义实例的属性外,还可以定义实例的方法。


    查看全部
  • 千万不要在实例上修改类属性,它实际上并没有修改类属性,而是给实例绑定了一个实例属性。

    查看全部
  • 当实例属性和类属性重名时,实例属性优先级高,它将屏蔽掉对类属性的访问。

    查看全部
  • 只有以双下划线开头的"__job"不能直接被外部访问。

    但是,如果一个属性以"__xxx__"的形式定义,那它又可以被外部访问了,以"__xxx__"定义的属性在Python的类中被称为特殊属性,有很多预定义的特殊属性可以使用,通常我们不要把普通属性用"__xxx__"定义。

    以单下划线开头的属性"_xxx"虽然也可以被外部访问,但是,按照习惯,他们不应该被外部访问。


    查看全部
  • 对于decorator的使用的总结:

    1. 作用:decorator,就跟它的名称一样:修饰,包装。简单说就是给原来的函数添加一些新功能。这种可以是批量级的处理,能减少我们的工作量。

    2. 无参数的decorator:在里面封装一个函数即可;

      如def performance(): 内部定义一个,一个,一个函数就可以了

    3. 有参数的decorator():在里面封装两个函数!!

      如def performance(unit): 内部定义per_decorator();  wraps()两个函数,两个!!

    4. 最后,由于decorator包装,修饰函数的时候可能会改掉他的一些特性,所以注意完善,用functools来完成改造

    查看全部
  • 函数运行时需要带括号,定义时需要带括号,在作为参数时不带括号
    查看全部
  • class Person(object):    def __init__(self, name, gender, birth):
            self.name = name
            self.gender = gender
            self.birth = birth

    __init__() 方法的第一个参数必须是 self(也可以用别的名字,但建议使用习惯用法),后续参数则可以自由指定,和定义函数没有任何区别。

    相应地,创建实例时,就必须要提供除 self 以外的参数


    查看全部
  • 定义 Person 类时,可以为Person类添加一个特殊的__init__()方法,当创建实例时,__init__()方法被自动调用,我们就能在此为每个实例都统一加上以下属性

    查看全部
  • 实例属性可以和变量一样进行赋值,也可以进行比较


    查看全部
  • 在排序时,由于p1,p2,p3都是类中的实例不能直接比较(但此处都只有name一个属性,所有碰巧可以直接sorted),而需要利用匿名函数自定义或引入一个比较函数cmp。

    查看全部
  • 有理数真的是坑到我了,Rational(a,b) 就是一个分数:a/b  a是分子,b是分母

    这个算法也是很自然的算法,自己仔细看看就能明白

    根据你小学还是初中学的分数的计算,就可以写出算法··

    查看全部
  • 按照 Python 的编程习惯,类名以大写字母开头,紧接着是(object),表示该类是从哪个类继承下来的。类的继承将在后面的章节讲解,现在我们只需要简单地从object类继承。

    有了Person类的定义,就可以创建出具体的xiaoming、xiaohong等实例。创建实例使用 类名+(),类似函数调用的形式创建:


    查看全部
  • 要在Python 2.7中引入3.x的除法规则,导入__future__的division:

    >>> from __future__ import division
    >>> print 10 / 3
    3.3333333333333335

    当新版本的一个特性与旧版本不兼容时,该特性将会在旧版本中添加到__future__中,以便旧的代码能在旧版本中测试新特性。


    查看全部

举报

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

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