我一直看到网站提到你执行'python'的目录被添加到python路径中。例如,在http://www.stereoplex.com/blog/understanding-imports-and-pythonpath上,作者cd到/ tmp文件夹然后执行'print(sys.path)'并且看,/ tmp文件夹出现在路径列表中。这是我在我的系统上尝试这个(安装了2.6.6):
示例结构:
app/
mymodule.py
inner_folder/
myscript.py
myscript.py中的包含以下行:
import 'mymodule.py'
我做了什么:
cd app
python inner_folder/myscript.py # ImportError
由于我从app /目录执行解释器,不应该将'app'放到python路径上吗?这就是我读过的很多文档都指明了行为应该如何。
请指教!
(我暂时通过手动将我想要的文件夹添加到环境中但不想永远依赖它来解决这个问题。由于许多网站都说可以这样做,我想为自己重现它)< / p>
答案 0 :(得分:60)
添加了脚本的目录,而不是当前目录。如果您将inner_folder/
转换为软件包,那么您可以使用python -m inner_folder.myscript
在app/
添加sys.path
的同时运行该脚本。
答案 1 :(得分:4)
当前目录是否在sys.path
中,import语句通常如下所示:
import mymodule
您编写的代码如下:
import 'mymodule.py'