摘要:
访问限制 我们可以给一个实例绑定很多属性,如果有些属性不希望被外部访问到怎么办? Python对属性权限的控制是通过属性名来实现的,如果一个属性由双下划线开头(__),该属性就无法被外部访问。看例子: class Person(object): def __init__(self, name): s 阅读全文
posted @ 2020-02-07 22:21
SHICENT
阅读(177)
评论(0)
推荐(0)
摘要:
初始化实例属性 虽然我们可以自由地给一个实例绑定各种属性,但是,现实世界中,一种类型的实例应该拥有相同名字的属性。例如,Person类应该在创建的时候就拥有 name、gender 和 birth 属性,怎么办? 在定义 Person 类时,可以为Person类添加一个特殊的__init__()方法 阅读全文
posted @ 2020-02-07 22:10
SHICENT
阅读(403)
评论(0)
推荐(0)
摘要:
面向对象编程 什么是面向对象编程 面向对象是一种编程范式 把程序看做不同对象的相互调用 对现实世界建立对象模型 面向对象编程的基本细想 类和实例 类用于定义抽象类型 实例根据类的定义被创建出来 class person: pass xiaoming = person() xiaojun = pers 阅读全文
posted @ 2020-02-07 22:04
SHICENT
阅读(253)
评论(0)
推荐(0)
摘要:
模块和包的概念 在文件系统中,包就是文件夹,模块就是xxx.py,包可以有多级,包和普通目录的区别就是包下面必须有个__init__.py,每一层都必须有 py文件名即模块名,模块的上一级为包,不同模块允许同名变量函数等,不同包允许同名模块 在一个模块引用其他模块: import math prin 阅读全文
posted @ 2020-02-07 20:24
SHICENT
阅读(221)
评论(0)
推荐(0)
摘要:
这两个都是可变参数,可以传入任意个数的参数 *args是非关键字参数,用于tuple,**kw是关键字参数,用于dict 同时使用*args和**kwargs时,必须*args参数列要在**kwargs前 代码 def foo(*args, **kw): print ('args = ', args 阅读全文
posted @ 2020-02-07 17:37
SHICENT
阅读(259)
评论(0)
推荐(0)
摘要:
偏函数 当一个函数有很多参数时,调用者就需要提供多个参数。如果减少参数个数,就可以简化调用者的负担。 比如,int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数默认按十进制转换: >>> int('12345') 12345 但int()函数还提供额外的base参数,默认值为10。 阅读全文
posted @ 2020-02-07 17:23
SHICENT
阅读(187)
评论(0)
推荐(0)
摘要:
decorator装饰器 什么是装饰器 问题: 定义了一个函数 想在运行时动态增加功能 又不想改变函数本身的代码 解决: 利用高阶函数,接收一个函数并对其进行包装,然后返回一个函数 代码 def f1(x): #被装饰函数 return x * x def new_fn(f): #装饰器函数 def 阅读全文
posted @ 2020-02-07 17:09
SHICENT
阅读(369)
评论(0)
推荐(1)
摘要:
匿名函数 高阶函数可以接收函数做参数,有些时候,我们不需要显式地定义函数,直接传入匿名函数更方便。 在Python中,对匿名函数提供了有限支持。还是以map()函数为例,计算 f(x)=x2 时,除了定义一个f(x)的函数外,还可以直接传入匿名函数: >>> map(lambda x: x * x, 阅读全文
posted @ 2020-02-07 15:47
SHICENT
阅读(245)
评论(0)
推荐(0)
摘要:
闭包 在函数内部定义的函数和外部定义的函数是一样的,只是他们无法被外部访问: def g(): print 'g()...' def f(): print 'f()...' return g 将 g 的定义移入函数 f 内部,防止其他代码调用 g: def f(): print 'f()...' d 阅读全文
posted @ 2020-02-07 15:28
SHICENT
阅读(141)
评论(0)
推荐(0)
摘要:
返回函数 Python的函数不但可以返回int、str、list、dict等数据类型,还可以返回函数! 例如,定义一个函数 f(),我们让它返回一个函数 g,可以这样写: def f(): print 'call f()...' # 定义函数g: def g(): print 'call g().. 阅读全文
posted @ 2020-02-07 15:06
SHICENT
阅读(476)
评论(0)
推荐(0)

浙公网安备 33010602011771号