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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 概念:调用类的实例方法时,先查找自身的定义,如果没有,则顺着继承链向上查找,直到在某个父类中找到为止。我们称这种行为为多态 区别动态和静态语言:这是动态语言和静态语言(例如Java)最大的差别之一。动态语言调用实例方法,不检查类型,只要方法存在,参数正确,就可以调用 函数:open()函数:用来打开一个磁盘文件,并返回 File 对象。 File.read()方法:read()方法可以读取文件内容 json.load(j包含read()的对象)函数: 解析json对象 注意:由于Python的动态特性,json.load()并不一定要从一个File对象读取内容。任何对象,只要有read()方法,就称为File-like Object r作用:在打开文件的时候open(r'c:\....')加r和不加''r是有区别的 'r'是防止字符转义的 如果路径中出现'\t'的话 不加r的话\t就会被转义 而加了'r'之后'\t'就能保留原有的样子
    查看全部
    1 采集 收起 来源:python中多态

    2017-12-28

  • super(Student(子类), self).__init__(name, gender) 去初始化父类
    查看全部
  • p1.get_grade 返回的是一个函数对象,但这个函数是一个绑定到实例的函数,p1.get_grade() 才是方法调用
    查看全部
  • 实例的方法就是在类中定义的函数,它的第一个参数永远是 self,指向调用该方法的实例本身 def get_grade(): 括号里面必须加self 为什么? 为了区分类的方法和普通方法
    查看全部
  • count在这里是类变量,属于类本身,所以需要使用类名来引用;而就算是普通的实例变量,也需要使用实例本身来引用
    查看全部
  • import time def performance(unit): def new_fn(f): def fn(*args,**kw): start = time.time() result = f(*args,**kw) print 'call ' + f.__name__ + '() in '+str(time.time()-start)+unit return result return fn return new_fn @performance('ms') def factorial(n): return reduce(lambda x,y: x*y, range(1, n+1)) print factorial(10)
    查看全部
  • #-*- coding:utf-8 -*- class Person(object): pass p1 = Person() p1.name = 'Bart' p2 = Person() p2.name = 'Adam' p3 = Person() p3.name = 'Lisa' L1 = [p1, p2, p3] L2 = sorted(L1,lambda p1,p2:cmp(p1.name,p2.name)) #利用.name属性对p1,p2,p3进行排序,排序完之后L2返回的还是p1,p2,p3 print L2[0].name #对p1进行name属性调用 print L2[1].name #对p2进行name属性调用 print L2[2].name #对p3进行name属性调用
    查看全部
  • setattr 函数对应函数 getatt(),用于设置属性值,该属性必须存在。
    查看全部
  • python 的继承
    查看全部
  • math.sqrt()返回结果是浮点数 s.strip(rm) 删除 s 字符串中开头、结尾处的 rm 序列的字符。 当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')
    查看全部
  • 变量名可以指向函数
    查看全部
  • 1.字符串 upper()和lower()可以实现字符串大小写的相互转换 2.利用map()函数,只需要传入转换函数就可以把一个list转换为另一个list,而不改变原有的list
    查看全部
  • from __future__ import division >>> print 10 / 3 3.3333333333333335 from __future__ import unicode_literals
    查看全部
  • try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句。 任务 利用import ... as ...,还可以动态导入不同名称的模块。 //////////////////////// 利用ImportError错误,我们经常在Python中动态导入模块: try: from cStringIO import StringIO except ImportError: from StringIO import StringIO 上述代码先尝试从cStringIO导入,如果失败了(比如cStringIO没有被安装),再尝试从StringIO导入。这样,如果cStringIO模块存在,则我们将获得更快的运行速度,如果cStringIO不存在,则顶多代码运行速度会变慢,但不会影响代码的正常执行。
    查看全部
  • 如果使用import导入模块名,由于必须通过模块名引用函数名,因此不存在冲突: import math, logging print math.log(10) # 调用的是math的log函数 logging.log(10, 'something') # 调用的是logging的log函数 如果使用 from...import 导入 log 函数,势必引起冲突。这时,可以给函数起个“别名”来避免冲突: from math import log from logging import log as logger # logging的log现在变成了logger print log(10) # 调用的是math的log logger(10, 'import from logging') # 调用的是logging的log
    查看全部

举报

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

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