所以我在做Learn Python the Hard Way的最后一个练习,它指出,在运行我一直在做的程序之前,必须设置Pythonpath环境变量,如下所示:
export PYTHONPATH=$PYTHONPATH:.
我已经做了这个,在它不起作用(我想这就是为什么当我试图运行我的程序,我得到一个重要的恐怖),我做了一些研究Python。从本质上讲,Pythonpath就是找到要导入的模块的位置。所以我将Pythonpath设置为我试图导入的模块的实际位置,但仍然没有结果。
这是我的目录:
我试图运行app.py,它试图导入main.py模块:
from gothonweb import maps
但我还是有个错误:
Traceback (most recent call last):
File "python_stuff/projects/GothonWeb/bin/app.py", line 2, in <module>
from gothonweb import maps
ImportError: No module named gothonweb
有人知道怎么回事吗?哦,还有其他一些细节。在MacOSXLion上运行Python2.7,如果有帮助的话。
按如下方式运行应用程序:
但是,如果您这样做了:
很多用户都会犯这个错误,here是Zed Shaw对为什么不这样运行你的应用程序的一个很好的解释!
那你做错了。在所有的python项目中,您不需要cd到一个较低的目录来运行东西。您可以保持在顶部,从那里运行所有内容,以便所有系统都可以访问所有模块和文件。
您必须告诉python在哪里加载包(即带有
__init__.py
文件的文件夹)。为了避免上述错误,您可以将
PYTHONPATH
设置为包文件夹的绝对路径,然后不管您在哪个文件夹中,python都会找到您的包。或者可以使用虚拟环境工具来帮助您管理它们。
好的,在python中添加到python路径,最简单的方法是在模块的顶部。
对于要添加的每个路径,您都可以回忆起这一点。
stringofpath
是/path/to/dir/
,其中dir
是您的项目所在的目录。不是你的项目目录。然后使用从项目目录开始的普通点表示法,继续降序到所有子目录中。在你的例子中,你的
stringofpath
是'User/myname/python_stuff'
随着您的进步,您将不得不花一些认真的时间学习您的python路径,有很多东西是很难找到的。环境变量——至少在linux中——在
/etc/environment
中永久设置。相关问题 更多 >
编程相关推荐