1. python 2/3 区别
- 整除
python 2:
print '3 / 2 =', 3 / 2
print '3 // 2 =', 3 // 2
print '3 / 2.0 =', 3 / 2.0
print '3 // 2.0 =', 3 // 2.0
结果:
3 / 2 = 1
3 // 2 = 1
3 / 2.0 = 1.5
3 // 2.0 = 1.0
python3:
print('3 / 2 =', 3 / 2)
print('3 // 2 =', 3 // 2)
print('3 / 2.0 =', 3 / 2.0)
print('3 // 2.0 =', 3 // 2.0)
3 / 2 = 1.5
3 // 2 = 1
3 / 2.0 = 1.5
3 // 2.0 = 1.0
-
Unicode
Python 2 有 ASCII str() 类型,unicode() 是单独的,不是 byte 类型。
现在, 在 Python 3,我们最终有了 Unicode (utf-8) 字符串,以及一个字节类:byte 和 bytearrays。
由于 Python3.X 源码文件默认使用utf-8编码,这就使得以下代码是合法的:
2. json api
- 从json str 转成json
for line in f:
data = json.loads(line)
one_data = data.values()
- 按照文本顺序
from collections import OrderedDict
for line in f:
data = json.loads(line, object_pairs_hook=OrderedDict)
one_data = data.values()
- json dump 输出文本
json.dumps(arr, ensure_ascii=False).encode('utf8')
3. 文件读写
4. 多进程