首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决python模块导入冲突?

如何解决python模块导入冲突?
EN

Stack Overflow用户
提问于 2012-11-29 04:33:11
回答 1查看 2.4K关注 0票数 4

这类似于this question,但那个没有提出解决方案。

我有~/google_appengine/google/appengine和/usr/lib64/python2-7/site-packages/google/protobuf.

我不能“导入google.appengine”,因为另一个谷歌文件夹妨碍了我。我该如何解决这个问题?

下面是一个最小的例子和错误:

代码语言:javascript
复制
$ python
Python 2.7.3 (default, Jun 12 2012, 13:50:02) 
[GCC 4.5.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import google.appengine
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named appengine

按照要求,下面是我的sys.path:

代码语言:javascript
复制
['', '/usr/lib64/python2.7/site-packages/nose-1.1.2-py2.7.egg', '/usr/lib64/python2.7/site-packages/mock-0.8.0-py2.7.egg', '/usr/lib64/python2.7/site-packages/coverage-3.5.1-py2.7-linux-x86_64.egg', '/usr/lib64/python2.7/site-packages/rosinstall-0.6.11-py2.7.egg', '/usr/lib64/python2.7/site-packages/vcstools-0.1.12-py2.7.egg', '/home/murph/google_appengine', '/home/murph/google_appengine/google/appengine', '/home/murph/google_appengine/google', '/home/murph/ros/ros/core/roslib/src', '/usr/lib/portage/pym', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib64/python2.7/site-packages/PIL', '/usr/lib64/python2.7/site-packages/gst-0.10', '/usr/lib64/python2.7/site-packages/gtk-2.0', '/usr/lib64/python2.7/site-packages/wx-2.8-gtk2-unicode', '/usr/lib64/portage/pym']

这显示了它正在导入哪个'google‘:

代码语言:javascript
复制
$ python
Python 2.7.3 (default, Jun 12 2012, 13:50:02) 
[GCC 4.5.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import google
>>> print google.__path__
['/usr/lib64/python2.7/site-packages/google']
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-29 04:54:34

从2.5版本开始,导入机制发生了变化(请参阅this PEP ):

import google将用于标准库中的模块

对于相对

代码语言:javascript
复制
from __future__ import absolute_import
from .google import appengine # (or  from google import appengine)

This blog entry解释如何导入相关模块。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13613889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档