目录
Python3的特化访问加速
Specialized Adaptive Interpreter-LOAD_ATTR
Pure Python Class CAN be specialized
Pure Python Class with _getattr_overwritten CANNOT be specialized
C-Extended Python Class CANNOT be specialized
Python3中的bytes与unicode的转换
python发展过程中,最初设计使用ASCII编码,后来扩充到Latin-1, 再后来扩展到unicode。
unicode首先使用2字节代表一个字符,再后来扩展到4字节代表一个字符,空间有浪费,所以有了utf-8这种变长的编码方式。
bytes – decode –> unicode
bytes <– encode – unicode
Python3与python2的文件区别
在python2中:
python *.py –> .pyc
pyhton -O –> .pyo
pyhton -OO –> .pyo
-O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x
-OO : remove doc-strings in addition to the -O optimizations
Python3中取消了pyo文件,统一使用pyc
Python3 –> .pyc