我试图运行python project from github我遵循一些关于这个问题的建议,比如从python3更改为python2,或者检查初始py在每个文件夹中…,但我解决不了。在
这是我得到的错误
Traceback (most recent call last): File "C:/Users/Pulse/Desktop/foil-python-master/src/trimlogic/test/FamilyTreeTestCase.py", line 3, in from trimlogic.test.helper import FoilTestCase ImportError: No module named trimlogic.test.helper
无论是从console(CMD)还是PyCharm运行python2或python3都不重要
我不知道你的具体问题是什么,但也许能帮你找到它。在
Python按路径执行模块导入。有一个神奇的环境变量PYTHONPATH告诉它在哪里寻找模块。所以,当你在python文件中执行
import trimlogic.test.helper
操作时,会发生。。。在它查看PYTHONPATH并获得其中的目录列表。 它转到第一个文件夹,查看是否存在一个
trimlogic.py
或一个名为trimlogic
的文件夹,其中包含文件__init__.py
。如果它找到一个文件trimlogic.py
,它将读取它并查找名为test
的变量。如果它是一个文件夹,它将进入该文件夹并查找test.py
或一个名为test
的文件夹,其中有__init__.py
。等等。如果失败,它将以同样的方式检查PYTHONPATH变量中的其余目录。您的命令失败,因为包含trimlogic
文件夹的src
目录不在PYTHONPATH上。在这里有个魔术。启动时的当前目录python.exe会自动添加到路径中。在控制台中,如果您执行
cd C:/Users/Pulse/Desktop/foil-python-master/src
,然后尝试运行python.exe trimlogic/test/FamilyTreeTestCase.py
,那么您的命令将按预期工作。在此外,Pycharm还有一些魔力可以帮助解决这个问题。首先,如果您右键单击
src
目录并将其标记为sources root
,它将自动在PYTHONPATH上使用该目录运行python命令。您还可以编辑run命令,以在执行命令之前更改要启动的工作目录或环境变量。在相关问题 更多 >
编程相关推荐