从网络而不是本地导入模块

时间:2016-11-28 18:27:04

标签: python python-2.7 python-import python-module

我们正致力于编写一些模块并将它们集中在我们的本地网络上。

正如此处所示:Import from network

我改变了我的PYTHONPATH以指向网络位置。

问题是,当我运行python shell时,导入并执行:print my_mod.__file__它仍然指向我的本地目录。

有没有办法从网络位置而不是本地导入,但保留两个链接,以便我可以在本地工作?

谢谢!

1 个答案:

答案 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