我们正致力于编写一些模块并将它们集中在我们的本地网络上。
正如此处所示:Import from network
我改变了我的PYTHONPATH以指向网络位置。
问题是,当我运行python shell时,导入并执行:print my_mod.__file__
它仍然指向我的本地目录。
有没有办法从网络位置而不是本地导入,但保留两个链接,以便我可以在本地工作?
谢谢!
答案 0 :(得分:1)
可能有各种各样的事情使它无法达到你的期望,例如:
PYTHONPATH
不会让它首先在中搜索,python仍会在其他任何地方之前查看当前目录。site-packages
文件或其他一些导入技巧,那么在本地.pth
中安装特定模块也会导致首先导入该模块。.pyc
个文件,这些文件是为您导入的内容而选取的。您可以通过在python shell中发出import sys; print(sys.path)
来检查按顺序搜索的路径。
解决方案可能是手动将您的网络位置作为sys.path
中的第一个元素:
import sys
sys.path.insert(0, "/network/modules/location")
import thing_you_want