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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 偏函数是为了减少函数参数的,即将一些参数设置为默认值。此时functools.partial可以把一个参数多的函数变成一个参数少的新函数,少的参数需要在创建时指定默认值,这样,新函数调用的难度就降低了,此时就要将引用函数的参数设置为默认值,也可以使用一个函数给与默认值。

    查看全部
    0 采集 收起 来源:python中偏函数

    2019-04-18

  • 由于装饰器返回的是一个新函数,因此在打印函数名时会显示为新返回的函数名,因此一些依赖于函数名的属性就会失效,因此为了保证新返回的函数与原函数保持必要属性一致,就需要使用functools模块中的wraper装饰器。@functools.wraps(f)该语句放于装饰器内嵌套函数(实际发生运算的函数)外。

    查看全部
  • 在class中定义类方法

    通过标记一个 @classmethod,该方法将绑定到 Person 类上,而非类的实例

    类方法的第一个参数将传入类本身,通常将参数名命名为 cls,上面的 cls.count 实际上相当于 Person.count

    查看全部
  • 带参数的装饰器,带参数的log函数首先返回一个decorator函数,再让这个decorator函数接收my_func并返回新函数,之后再装饰器函数中进行例如log、计算运行时间等实现。

    查看全部
  • Python的 decorator 本质上就是一个高阶函数,它接收一个函数作为参数,然后,返回一个新函数。

    使用 decorator 用Python提供的 @ 语法,装饰器顾名思义就是起到装饰作用,即进行一些类似日志、运行时间的统计,其本质为内嵌套函数。

    对于自适应任何参数定义的函数,可以使用Python的 *args 和 **kw,就这两个放在参数位置即可保证任意个数的参数总是能正常调用。

    查看全部
  • 匿名函数,可以不必定义函数名,直接创建一个函数对象,很多时候可以简化代码。匿名函数表示方式,关键字lambda表示匿名函数,冒号前面的x表示函数参数,匿名函数有个限制,就是只能有一个表达式,不写return,返回值就是该表达式的结果。

    查看全部
  • 一个实例的私有属性就是以__开头的属性,无法被外部访问,但是,从类的内部是可以访问的。除了可以定义实例的属性外,还可以定义实例的方法。


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

    查看全部
  • Person 类添加一个类属性 count,每创建一个实例,count 属性就加 1,统计一共创建了多少个 Person 的实例。

    https://img1.sycdn.imooc.com//5cb830ea0001014b02460209.jpg

    查看全部
  • pip install sth.

    安装模块从网上找 pypi.com

    查看全部
  • 如果一个属性由双下划线开头(__),该属性就无法被外部访问,如:

    class Person(object):
        def __init__(self, name):
            self.name = name
            self._title = 'Mr'
            self.__job = 'Student'
    # __job不能被访问

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

    查看全部
  • sort 与 sorted 区别:

    sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

    list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。


    查看全部
  • 定义Person类,并创建出两个实例:

    class Person:
        def __init__(self,name):
                self.name=name
    xiaoming = Person('xiaoming')
    xiaohong = Person('xiaohong')
    print xiaoming
    print xiaohong


    查看全部
  • 将里面的f函数替代了,然后形成新的函数覆盖掉原函数

    查看全部
  • 面向对象编程的基本思想:

    类和实例:

    1.  类用于定义抽象类型(class Person:)

    2. 实例根据类的定义被创建出来 (lily=Person())

    数据封装:不同的实例拥有相同的数据类型,却又不同的属性

    查看全部

举报

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

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