Python路径在sys.Path列表的后面,它被提前选中

Python路径在sys.Path列表的后面,它被提前选中,python,google-app-engine,google-cloud-endpoints,Python,Google App Engine,Google Cloud Endpoints,模块不是按sys.path中的路径顺序搜索的吗 我在代码中导入失败的地方打印了sys.path。 sys.path条目的顺序如下 ['/home/xyz/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib', ... '/usr/lib/python2.7/dist-packages'] import语句来自google.api.control import client as control\u cl

模块不是按sys.path中的路径顺序搜索的吗

我在代码中导入失败的地方打印了sys.path。 sys.path条目的顺序如下

['/home/xyz/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib',
...
'/usr/lib/python2.7/dist-packages']
import语句来自google.api.control import client as control\u client“。 “google.api.control”模块所在的正确路径是
'/home/xyz/python docs samples/appengine/standard/endpoints-frameworks-v2/echo/lib'
。 但是,我在import语句之前打印了
google.api.\uuuuu path\uuuuu
,路径是
'/usr/lib/python2.7/dist packages/google/api'


为什么列表中前面的路径没有被选中?

正如@HondaGuy所指出的,将“google endpoints”安装到标准python包路径是解决这个问题的一种方法

pip install google-endpoints

也许它在第一条路上没找到。你确定它存在吗?当我在项目中引入端点时,我的导入路径也有类似的问题。在我的例子中,google.\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。我通过在麻烦的导入之前添加“importgoogle.api”来“解决”它。这导致python改变了google的路径,一切都正常。端点和app engine SDK必须有一些需要解决的命名冲突。丑陋的。魔术师:是的,我打印了路径@洪达圭:我确实在麻烦的“from google.api.control import client as control_client”之前添加了“import google.api”。我仍然看到这个问题。你知道为什么网站包中的google.api不包含control.client吗?我甚至尝试过“pip安装——升级google api python客户端”。但在site-packages.control.client中看不到control.client。control.client是端点管理python的一部分。如果你安装了谷歌端点,这个问题就会解决。文档建议使用以下内容:“pip安装谷歌端点——额外索引url=“@HondaGuy”,这很有帮助。我忘记了将端点安装到标准python路径。非常感谢。