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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 可以用 type() 函数获取变量的类型,它返回一个 Type 对象

    查看全部
  • 这是动态语言和静态语言(例如Java)最大的差别之一。动态语言调用实例方法,不检查类型,只要方法存在,参数正确,就可以调用。

    查看全部
    0 采集 收起 来源:python中多态

    2019-01-20

  • 函数isinstance()可以判断一个变量的类型,既可以用在Python内置的数据类型如str、list、dict,也可以用在我们自定义的类,它们本质上都是数据类型。

    查看全部
  • 一定要用 super(Student, self).__init__(name, gender) 去初始化父类,否则,继承自 Person 的 Student 将没有 name 和 gender。

    查看全部
  • 通过标记一个 @classmethod,该方法将绑定到 Person 类上,而非类的实例。类方法的第一个参数将传入类本身,通常将参数名命名为 cls,上面的 cls.count 实际上相当于 Person.count

    查看全部
  • upper()函数将字符串的所有字母转换为大写WWW.PYTHON.COM

    lower()函数将字符串的所有字母转换为小写www.python.com

    capitalize()函数将字符串的首字母大写,其余小写

    Www.python.com

    titile()函数将每一个单词的首字母转换为大写,其余小写

    Www.Python.Com


    查看全部
  • upper()函数将字符串的所有字母转换为大写WWW.PYTHON.COM

    lower()函数将字符串的所有字母转换为小写www.python.com

    capitalize()函数将字符串的首字母大写,其余小写

    Www.python.com

    titile()函数将每一个单词的首字母转换为大写,其余小写

    Www.Python.Com


    查看全部
  • 当实例属性和类属性重名时,实例属性优先级高

    查看全部
  • 实例属性每个实例各自拥有,互相独立,而类属性有且只有一份。

    查看全部
  • cmp(a,b)函数中,a>b返回1

    sorted默认从小到大的升序,即-1排在前面

    查看全部
    0 采集 收起 来源:python中 __cmp__

    2019-01-19

  • print (sorted(L, key=lambda student:(-student.score,+student.name))) -号代表降序,+号代表升序

    查看全部
    1 采集 收起 来源:python中 __cmp__

    2019-01-19

  • 高阶函数是一个创建的函数包含多个参数,其中一个或者多个参数指向其他函数,
    查看全部
  • 当使用print输出对象的时候,只要自己定义了__str__(self)方法,那么就会打印从在这个方法中return的数据

     Python 定义了__str__()和__repr__()两种方法,__str__()用于显示给用户,而__repr__()用于显示给开发人员。

    同时定义 __repr__ 方法和 __str__ 方法时,print() 方法会调用 __str__ 方法

    查看全部
  • 闭包的特点是返回的函数还引用了外层函数的局部变量,所以,要正确使用闭包,就要确保引用的局部变量在函数返回后不能变。举例如下:

    # 希望一次返回3个函数,分别计算1x1,2x2,3x3:def count():
        fs = []
        for i in range(1, 4):
            def f():
                 return i*i
            fs.append(f)
        return fs
    
    f1, f2, f3 = count()

    你可能认为调用f1(),f2()和f3()结果应该是1,4,9,但实际结果全部都是 9(请自己动手验证)。

    原因就是当count()函数返回了3个函数时,这3个函数所引用的变量 i 的值已经变成了3。由于f1、f2、f3并没有被调用,所以,此时他们并未计算 i*i,当 f1 被调用时:

    >>> f1()
    9     # 因为f1现在才计算i*i,但现在i的值已经变为3

    因此,返回函数不要引用任何循环变量,或者后续会发生变化的变量。


    查看全部
    0 采集 收起 来源:python中闭包

    2019-01-18

  • 由于装饰器返回的函数的的一些函数属性变了所以借用python内置的functools.warps()将原函数的一些属性复制到新函数上
    查看全部

举报

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

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