一.基础知识点
- "#":单行注释 三个单引号为多行注释
- 字符串的每个字符都在内存中占一个字节,极其浪费内存
- 列表 : [ ]
- 字典 : { } 或者集合
- 元组 : ( )
- 在函数外写的变量为全局变量,如果想在函数内部修改全局变量,需要加global
- 如果一个元组只有一个元素,应该这样写(a,)
需要加一个,
- python和OC一样,是值引用,不是swift的值复制
- 使用eval将字符串变成函数
- a,b = b,a : 交换两个变量
- num&tuple&str是不可变数据类型,dic&arr是可变数据类型
- n += n 和 n = n + n 是不一样的,前者n是同一个,后者n为新的n
-
__init__() __str__(print时调用) __del__(对象注销时调用)__new__(创建对象,最先调用的方法) __name__() __all__(放方法名) __slot__ = ()限定属性 __call__
new方法负责创建,init方法负责初始化 - del可以从内存中删除对象
- @classmethod : 类方法,对象也可以调用类方法
- @staticmethod : 静态方法可以不要参数,类和对象都可以调用静态方法.
- sys.path : 可以添加自己的路径
- reload(test) : 重新导入模块
- == 判断值是否相等, is判断是否同一内存 , id(a)返回a的内存地址
- copy.deepcopy(a) : 深拷贝,是完全的深拷贝,依次拷贝
- copy.copy(a) : 浅拷贝,会判断被拷贝的是否为可变对象,(可变对象)只拷贝第一层,(不可变对象)拷贝后内存是相同的
- select和epoll是单进程不堵塞服务器,select(轮询),epoll(时间通知机制)
- python GIL
- type不仅可以辨别类型,还可以创建类,类是由type创建的.
- b二进制 o八进制 x十六进制
-
python有name mangling(名字重整)特性,会将__name改成 _类名__name
反码补码!
小整数对象池.png
网友评论