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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 直接print L2的结果: [<__main__.Person object at 0x7fd194d22ad0>, <__main__.Person object at 0x7fd194de3450>, <__main__.Person object at 0x7fd194d22d10>] list里对象类型也是实例位置 必须提取list中元素的name属性才显示名称
    查看全部
  • Python对属性权限的控制是通过属性名来实现的,如果一个属性由双下划线开头(__),该属性就无法被外部访问。(self__job='student')
    查看全部
  • 解释器内部会将**kw拆分成对应的dict. setattr()方法接受3个参数:setattr(对象,属性,属性的值) setattr(self,k,v)相当于self.k = v kw.iteritems()历遍字典kw的所有key和value,分别匹配k,v
    查看全部
  • 在定义 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函数,第一个参数为将进行操作的列表的名字,第二个参数lambda x:条件 sorted(L1,lambda p1,p2:cmp(p1.name,p2.name))
    查看全部
  • def format_name(s): return s[0].upper()+s[1:].lower() print map(format_name, ['adam', 'LISA', 'barT'])
    查看全部
  • L=[1,2,3,4,5] def f(x): returen x*x print map(f,L)
    查看全部
  • 两种方法安装第三方模块 1.easy_install 2.pip install(官方推荐,2.7.9后Python内置pip) 第三方包网站:https://pypi.python.org 假如默认安装了2.7.9以上版本的,可以把pip .exe所在文件夹(c:\pythonx.xScripts)添加到系统变量path中,如果没有pip.exe文件那还需要去官网下载,安装后添加变量即可 cd 进入到系统盘 python27\Scripts文件夹下就可以pip install web.py了
    查看全部
  • 导入模块math后为何引用sqrt时还要加math: math是包含各种函数或方法的模块,若前面是import math, 引用模块中的函数就要用格式math.sqrt()。 若想省略前面的模块名,在前面导入时用from math import *
    查看全部
  • 匿名函数
    查看全部
  • 闭包:
    查看全部
    0 采集 收起 来源:python中闭包

    2018-02-24

  • 当新版本的一个特性与旧版本不兼容时,该特性将会在旧版本中添加到__future__中,以便旧的代码能在旧版本中测试新特性。 在Python 3.x中,字符串统一为unicode,不需要加前缀 u,而以字节存储的str则必须加前缀 b isinstance(object, classinfo) 其中,object 是变量,classinfo 是类型即 (tuple,dict,int,float,list,bool等) 和 class类 若参数 object 是 classinfo 类的实例,或者 object 是 classinfo 类的子类的一个实例, 返回 True。 若 object 不是一个给定类型的的对象, 则返回结果总是False。 若 classinfo 不是一种数据类型或者由数据类型构成的元组,将引发一个 TypeError 异常。
    查看全部
  • JSON(JavaScript Object Notation):一种轻量级数据交换格式,相对于XML而言更简单,也易于阅读和编写,机器也方便解析和生成,Json是Python的Json模块序列化与反序列化的过程分别是 encoding和 decoding encoding:把一个Python对象编码转换成Json字符串 decoding:把Json格式字符串解码转换成Python对象 对于简单数据类型(string、unicode、int、float、list、tuple、dict),可以直接处理。 json.dumps方法对简单数据类型encoding: 利用ImportError错误,我们经常在Python中动态导入模块: try: from cStringIO import StringIO except ImportError: from StringIO import StringIO 上述代码先尝试从cStringIO导入,如果失败了(比如cStringIO没有被安装),再尝试从StringIO导入。这样,如果cStringIO模块存在,则我们将获得更快的运行速度,如果cStringIO不存在,则顶多代码运行速度会变慢,但不会影响代码的正常执行。 try 的作用是捕获错误,并在捕获到指定错误时执行 except 语句。
    查看全部
  • 高阶函数:能接受函数做参数的函数 1.变量可以指向函数 eg:>>>f=abs >>>f(-10) 10 2.函数的参数可以接收变量 eg:>>>abs=len >>>abs([1,2,3]) 3 #abs(-10)报错 3.一个函数可以接收另一个函数作为参数 eg:def add(x,y,f) return f(x)+f(y) add(-5,8,abs) #f = abs,相当于自定义add函数中的f有着abs()函数的功能。 13
    查看全部
  • 函数式编程的特点 把计算视为函数而非指令 纯函数式编程:不需要变量,测试简单,无副作用 支持高阶函数,代码简洁 python的函数式编程 不是纯函数式编程:允许有变量 支持高阶函数:函数可以作为变量传入 支持闭包:有闭包就能返回函数 有限度的支持匿名函数
    查看全部

举报

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

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