io.open与python中打开的区别

时间:2015-11-24 10:38:48

标签: python file python-3.x io python-2.x

过去,codecs已被io取代。尽管使用io.open似乎更合适,但大多数入门python类仍然教授open

Difference between open and codecs.open in Python有一个问题,但 open只是io.open的鸭子型?

如果没有,为什么使用io.open会更好?为什么使用open教学更容易?

在这篇文章(http://code.activestate.com/lists/python-list/681909/)中,Steven DAprano表示内置的open正在后端使用io.open那么我们是否应该重构我们的代码以使用open代替io.open

除了py2.x的向后兼容性之外,有没有理由在py3.0中使用io.open而不是open

1 个答案:

答案 0 :(得分:24)

根据文档在Python3中的情况:

  

io.open(file, *[options]*)

     

这是内置open()函数的别名。

  

虽然内置的open()和相关的io模块是   建议的方法用于处理编码的文本文件,这个模块    [即。编解码器] 提供额外的实用程序功能和类   在使用二进制文件时允许使用更广泛的编解码器   文件

(粗体和斜体是我的编辑)