拔出 Raspberry Pi 后导入模块时出现 Python EOFerror
Posted
技术标签:
【中文标题】拔出 Raspberry Pi 后导入模块时出现 Python EOFerror【英文标题】:Python EOFerror when importing a module after unplugging Raspberry Pi 【发布时间】:2014-10-17 03:41:02 【问题描述】:我在树莓派上启动时从 rc.local 运行了一个 python3.2 脚本 - Raspbian OS,它导入了一个名为 inouts.py
的文件,我制作并位于同一目录中,我更新了 sys.path.append(...)
脚本运行了好几个星期。今天我不得不在不关机的情况下拔掉 rpi。
重启后脚本无法打开并给出错误:
EOFError: EOF read where not expected
inouts.py
绝对是导致错误的模块,因为我有它自己的行。
如果我将名称从 inouts.py
更改为 inouts2.py
,则脚本有效。
如果我将它作为 python2 运行,它也可以工作。
谁能指出我正确的方向是什么导致这个文件名导致这个错误?
Traceback (most recent call last):
File "rf2.py", line 3, in <module>
import inouts
EOFError: EOF read where not expected
【问题讨论】:
想分享一些可以提供帮助的东西吗?代码sn-p?堆栈跟踪? 添加了错误信息,很快就会得到更多信息。 有inouts.pyc
文件吗?如果是这样,请尝试删除它。
是的,我也删除了,仍然没有变化
您可以阅读有关__pycache__
文件夹here 的更多信息。
【参考方案1】:
我今天自己解决了这个问题,删除了__pycache__
子目录中的所有*.pyc
文件。
【讨论】:
pycache 前面有两个 _ 空白,后面有两个 - 这里没有显示。以上是关于拔出 Raspberry Pi 后导入模块时出现 Python EOFerror的主要内容,如果未能解决你的问题,请参考以下文章
在Raspberry Pi上安装mitmproxy时出现python问题
Android Things:在 Raspberry PI 3 上通过 USB UART 接收数据时出现 NullPointerException
Android事物:在Raspberry PI 3上通过USB UART接收数据时出现NullPointerException