[英]Raspberry Pi Python Program First Line Error/Python Library Error
该程序的前两行是:
from i2clibraries import i2c_lcd
from ABElectronics_ADCPi import ADCPi
无论是哪一行,当我尝试在Python或Python 3下运行时,Pi都会返回错误。所有库均已拥有并注册。 使用shell命令,可以正确显示所有检查,说明导出工作正常。 但是,无论第1行是哪一行,都将返回缺少的模块错误,而i2clibraries将始终返回缺少的模块错误。 通过将其保留为第一行,我在运行中得到的错误最少,但是程序仍然返回以下内容:
pi@raspberrypi ~ $ sudo python file.py
Traceback (most recent call last):
File "file.py", line 1, in <module>
from i2clibraries import i2c_lcd
File "/home/pi/i2clibraries/i2c_lcd.py", line 1, in <module>
from i2clibraries import i2c
File "/home/pi/i2clibraries/i2c.py", line 1, in <module>
from quick2wire.i2c import I2CMaster, writing_bytes, reading
ImportError: No module named quick2wire.i2c
给定错误,有什么可能的解决方案来阻止第一行无法找到其模块?
该错误消息告诉您,当您尝试导入i2clibraries
模块时,在其本身正在被导入时,无法找到其所需的导入(依赖项)。 这特别是在i2c.py
文件的第一行中-该行
from quick2wire.i2c import I2CMaster, writing_bytes, reading
失败了。
问题几乎可以肯定是您的模块不在Python模块搜索路径中 。 如果需要,在此答案的末尾会提供有关此内容的更多信息。
有多种解决方法。 该模块的开发人员推荐的一种是
要在不进行安装的情况下使用该库,请将源树的完整路径添加到PYTHONPATH环境变量中。 例如:
export QUICK2WIRE_API_HOME=[the directory cloned from Git or unpacked from the source archive] export PYTHONPATH=$PYTHONPATH:$QUICK2WIRE_API_HOME
因此,您需要知道您的quick2wire
库安装在哪里-从错误消息中,我可能会猜测它们在/home/pi/i2clibraries/
,因此$QUICK2WIRE_API_HOME=/home/pi/i2clibraries/
应该是您的第一个以上一对线。
您可以在Python网站上更全面地了解如何在Python 2.x 上安装模块。 您可以通过转到交互式Python提示符(即键入python
)然后执行操作来查看构成模块搜索路径的路径。
>>> import sys
>>> sys.path
这将输出一个包含字符串的列表,该字符串表示将在其中搜索模块的所有路径。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.