python - 为什么 io 模块对象没有属性 'RawIOBase' 即使我使用的是 python 2.6

标签 python

我试图在 python 中使用“RawIOBase”创建一个类,如下所示。

try:
    import io
except ImportError:
    class Serial(PosixSerial, FileLike):
        pass
else:
    class Serial(PosixSerial, io.RawIOBase):
        pass

我试图使用 Python 2.6 运行它,但它显示错误:

AttributeError: 'module' object has no attribute 'RawIOBase'

我读到从 Python 2.6 开始支持 RawIOBase。

最佳答案

确保您没有另一个名为 io.py 的文件.如果是这样,它可以掩盖 io标准库中的模块。您可以检查哪个文件正在加载为 io打印模块print(io) .它应该返回类似 <module 'io' from '/usr/lib/python2.6/io.pyc'> 的内容.

如果有这样的模块或包屏蔽了标准lib模块,解决方法是重命名非标准的io模块或包。

关于python - 为什么 io 模块对象没有属性 'RawIOBase' 即使我使用的是 python 2.6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23572003/

相关文章:

python - 当安装了 'make altinstall' 时,如何干净地删除 Python?

python - Pandas ,选择条件行取决于列日期值

python - 如何使用 django 在网页上添加 css/image?

python - 如何隐藏旧 Python 版本的不兼容代码?

python - 使用 numpy 将整数拆分为数字

php - 从 Wordpress 在 AWS 上启动 Python 脚本

Python 将文本中的 ""替换为\"

python - 将对象属性值添加到数组 Django

python - matplotlib.pyplot.draw() 和 matplotlib.pyplot.show() 没有效果

python - 如何在 python 中显示非英文字符?