在eclipse中将python模块添加到pydev会导致导入错误吗?

在eclipse中将python模块添加到pydev会导致导入错误吗?,python,eclipse,configuration,import,pydev,Python,Eclipse,Configuration,Import,Pydev,我在让eclipse上的PyDev识别已安装的模块时遇到问题。以下是我的详细方法。这台机器是一台Mac(雪豹) 在终端命令中 python --version 显示Python 2.6.6 及 工作都很好 我在Eclipse中安装了PyDev,并配置了python解释器(自动配置)。我选择了所有建议的软件包,点击Apply和Ok 但eclipse一直在抱怨 Traceback (most recent call last): File "/Users/me/Documents/worksp

我在让eclipse上的PyDev识别已安装的模块时遇到问题。以下是我的详细方法。这台机器是一台Mac(雪豹)

在终端命令中

python --version
显示Python 2.6.6

工作都很好

我在Eclipse中安装了PyDev,并配置了python解释器(自动配置)。我选择了所有建议的软件包,点击Apply和Ok

但eclipse一直在抱怨

Traceback (most recent call last):
  File "/Users/me/Documents/workspace/myproject/python/pythontest.py", line 12, in <module>
    from unidecode import unidecode
ImportError: No module named unidecode
当我删除脚本中的第一行时

#!/usr/bin/env python
这会导致同样的错误


有人知道问题出在哪里吗?

尝试首选项>pydev>解释器-python并在重新添加python解释器时删除并重新添加它(在删除它之前确保知道它的路径),勾选所有框

这是我问题的解决方案:

  • 找出相应python版本的文件夹
    。/site packages/
    的路径。(对我来说,这是在我的Mac电脑上安装Snoe Leopard的Python 2.6版的
    /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site packages/
  • 打开eclipse首选项并转到PyDev->解释器-Python
  • 在下方框的左侧,单击“新建文件夹”
  • 添加相应python版本的导航到
    。/site包/
  • 打开
  • 点击应用
  • 点击Ok
  • 你应该很乐意去


    感谢@all particionts,他们在评论中提供了正确方向的提示。

    我今天遇到了同样的问题。我正在使用pydev,并且有一个包含多个子包的工作项目。在创建了一个新模块后,我突然无法在另一个包中使用该模块。令人费解的是,我可以在同一个子包中使用另一个模块

    最后

  • eclipse重启
  • 删除/添加python解释器和所有站点包
  • 恼怒的搔头
  • 我使用以下脚本删除了所有编译的类:

    导入操作系统
    def clean_文件夹(文件夹):
    对于os.listdir(文件夹)中的文件:
    path=os.path.join(文件夹、文件)
    如果os.path.isdir(路径):
    清除文件夹(路径)
    如果.pyc'==文件[-4:]:
    打印“删除:”+str(路径)
    删除操作系统(路径)
    如果uuuu name uuuuuu='\uuuuuuu main\uuuuuuu':
    文件夹='YOUR\u PROJECT\u SRC\u PATH'
    清理文件夹(文件夹)
    
    最后我可以做“实际”工作:)
    希望它能帮助某人…

    假设您的永恒模块位于/

    启动Eclipse并转到项目选项。选择“PyDev PYTHONPATH” 在右边你会看到一个标签窗口。在那里选择外部库。
    单击Add Source Folder(添加源文件夹)并从上面的路径中选择您的库。

    @Aufwind您的答案对我有帮助,但没有解决问题

    • 查找文件夹../site packages/…的路径
    • 打开eclipse首选项并转到PyDev->解释器-Python
    • 在下方框的左侧,单击“新建文件夹”。 --->在这里,我违背了你的指示。我为未被识别的模块添加了鸡蛋。添加站点包文件夹无法修复此问题
    • 打开
    • 点击应用
    • 点击Ok

    然后我就可以走了

    当Eclipse“丢失”系统或项目中存在的包时,从项目的上下文菜单中,选择“属性”菜单项,然后选择对话框左侧树状视图中的“PyDev-PYTHONPATH”项,然后选择“强制还原内部信息”按钮。PyDev似乎保留了一个信息的计算缓存,当缓存因任何原因变得不一致时,您可以强制PyDev重新计算。

    您只需将模块添加到PyDev路径。转到项目属性(从上下文菜单)->PyDev->PYTHONPATH->外部库。根据模块是在源文件夹中还是在zip/egg文件中,选择addsourcefolder或addzip/jar/egg。导航到site packages目录并指向相关的文件或文件夹(我的文件或文件夹是:/usr/local/lib/pythonx.x/site packages)

    在我的情况下,我在编译之前没有收到此错误,但在编译时收到错误导入错误:没有名为myant.core的模块。我试图添加来自PyDev-PYTHONPATH的文件,但再次出现相同的错误。然后我意识到我实际上不必将路径精确地添加到我的.py文件所在的文件夹中。事实上,我必须添加myant.core所在的文件夹。这样做之后,当我重新编译我的项目时,我重新启动了,问题得到了解决。我想分享我所拥有的:

    Python 2.7 Eclipse开普勒4.3、PyDev 3.9.2和我的ubuntu 14.04

    .py文件位置:
    /${PROJECT\u DIR\u NAME}/src/myant/core
    ,因此我添加了
    /${PROJECT\u DIR\u NAME}/src

  • 打开eclipse窗口->首选项并转到PyDev->解释器
  • 单击“检查解释器是否与环境同步”

  • 这是为了我。不需要重新启动Eclipse。

    我通过转到项目属性->PyDev Django解决了这个问题 以及设置Django设置模块。

    用于Oxygen 2(我认为它在早期版本上也起作用)

  • 右键单击项目文件夹并选择“属性”
  • 选择“PyDev-解释器/语法”
  • 单击“单击此处配置未列出的解释器”
  • 从配置的解释器的顶部列表中选择任何现有的解释器
  • 应出现“需要选择”对话框,其中必须选择一个或多个要恢复的口译员。勾选所有适用项
  • 单击“Ok”,PyDev将重新扫描,我假设,重建站点包的一些内部视图
  • 单击“应用并关闭”关闭所有对话框
  • 要使导入错误标记在代码编辑器中消失,我需要在后面键入空格
    Traceback (most recent call last):
      File "/Users/me/Documents/workspace/myproject/python/pythontest.py", line 12, in <module>
        from unidecode import unidecode
    ImportError: No module named unidecode
    
    #!/usr/bin/env python
    # encoding: utf-8
    
    
    import sys
    import os
    from unidecode import unidecode
    
    
    def main():
        print unidecode(u"Ågot Aakra")
    
    if __name__ == '__main__':
        main()
    
    #!/usr/bin/env python