啊,这,写了这么多年python,都是with open 。今天看别人代码看到了codecs.open打开文件。查了半天,以后就也把这些细小的差别笔记写下来吧。
总的来说,就是,无脑codecs.open就完事了。
使用open尝尝会遇到编码问题,这点在爬虫程序里尤为常见。
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128)
而使用codecs.open则会自动转换,从而不会产生这个问题。
而之所以说无脑使用codecs.open的原因不止这点,还有几点如下:
- 兼容
open
函数所有操作命令。 - 指定用什么读取编码,就用什么编码读取和操作,无需担心编码问题。
- 速度是一样的。
0 条评论