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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 这个是真蒙了,不过想起来有理数是啥之后就......我当初学到的都喂狗了嘛,绝望.


    查看全部
  • functional 函数范式

    查看全部
  • 装饰器, f1 = new_fn(f1) 重点理解这句话的含义, @new_fn

    查看全部
  • @log

    @log('Debug')
    def my_func():
        pass
    log_decorator = log('Debug')
    my_func=log_deractor(my_func)
      log_decorator=log('Debug')
      @log_decorator
      def my_func():
          pass


    查看全部
  • def performance(unit='s'):
        def performance_decorator(factorial):
            def new_factorial(*args, **kw):
                start = time.time()
                r = factorial(*args, **kw)
                end = time.time()
                print 'call', factorial.__name__ + '()', 'time:', (end - start) * 1000 if unit == 'ms' else (end - start), unit
                return r
            return new_factorial
        return performance_decorator

    字数太多,评论区放不下了

    查看全部
  • 在Python,有两种属性,类属性和实例属性,类属性相当于类的静态方法(类比于Java),实例属性是每个实例单独的属性,楼主所说的用Person.count,这里调用的就是类属性,self.count调用的是实例属性,当在_init_中调用的是self时,然后打印的时候调用的是Person.count,那么count肯定是它的初始值0了,因为它没有改变,用self.count,改变的只是实例的属性,并没有改变类属性,所以打印出三个0了,如果楼主把print那个部分的Person换成p1,p2,p3的时候,打印的就是三个1了,因为他们的实例属性在初始化的时候被+1了,而需要改变类属性的话,楼主就需要把self.count = self.count +1 改成Person.count=Person.count+1了

    查看全部
  •  sorted()也是一个高阶函数,它可以接收一个比较函数来实现自定义排序,比较函数的定义是,传入两个待比较的元素 x, y,如果 x 应该排在 y 的前面,返回 -1,如果 x 应该排在 y 的后面,返回 1。如果 x 和 y 相等,返回 0。

    查看全部
  • class 子类名称(父类名称):

        def __init__(self):


            super(子类名称, self).__init__()


            pass


        def 你在子类定义的方法名(Ps:不一定是__init__)(self,新定义的参数名和要继承的参数名):


            super(子类名称, self).要继承的父类方法名(对应方法的参数名)


      课程中写法略有不同是因为直接集成到__init__方法中了,而不是其他的方法。(不理解什么是方法等,姑且理解为函数,即def定义的)

    查看全部
  • 先打印调用时间,在调用函数本身

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

    class Person(object):    def __init__(self, name, gender, birth):
            self.name = name
            self.gender = gender
            self.birth = birth

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


    查看全部
  • sorted(iterable[, cmp[, key[, reverse]]])
    iterable --  可迭代对象。
    cmp --  比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
    key --  主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
    reverse --  排序规则,reverse = True  降序 , reverse = False 升序(默认)。

    >>> students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]>>> sorted(students, key=lambda s: s[2])            # 按年龄排序[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)] >>> sorted(students, key=lambda s: s[2], reverse=True)       # 按降序[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]>>>

    查看全部
  • object 是Python所有类的基类(元类),可以这样理解: 人类最老的祖先是亚当夏娃一样。 

    Python 3.x可以不用写object ,如 class Person(object),默认派生自object 


    查看全部
  • Python中类的定义以及实例的创建

    1:类的定义  class 类名(集成自谁):

    2:实例的创建    实例名 = 类名(


    查看全部
  • 内层函数引用外层函数的变量,然后返回内层函数的情况,称为闭包

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

    2018-05-06

  • 用到reduce的时候。先说函数名,再写列表

    查看全部

举报

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

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