如何让IntelliJ识别常见的Python模块?

如何让IntelliJ识别常见的Python模块?,python,intellij-idea,Python,Intellij Idea,我使用的是IntelliJ 10 IDEA终极版 我已经创建了一个新文件Test.py,IntelliJ已经正确地切换到Python解析模式。(我可以通过键入“d”来确认这一点,它会弹出“def”作为建议,正确地点击tab键会显示“def:”) 但是,当我尝试此代码时 import os cwd = os.getcw <Ctrl-space> 导入操作系统 cwd=os.getcw 发生了两件事 我在操作系统下面有一个巨大的下划线,悬停在上面会给我一条“未解析的引用'os'”消

我使用的是IntelliJ 10 IDEA终极版

我已经创建了一个新文件Test.py,IntelliJ已经正确地切换到Python解析模式。(我可以通过键入“d”来确认这一点,它会弹出“def”作为建议,正确地点击tab键会显示“def:”)

但是,当我尝试此代码时

import os

cwd = os.getcw <Ctrl-space>
导入操作系统
cwd=os.getcw
发生了两件事

  • 我在操作系统下面有一个巨大的下划线,悬停在上面会给我一条“未解析的引用'os'”消息
  • 当我希望看到“getcwd”时,点击上面的Ctrl空格并没有得到任何建议
  • 我假设这一定是因为我没有正确配置IntelliJ以处理python模块,但我不知道我缺少了什么


    有任何IntelliJ/Python用户能够帮助我吗?

    您是否设置了Python解释器方面

    打开项目结构CTRL+ALT+SHIFT+S

    Project settings->Facets->expand Python单击child->Python解释器

    然后:

    Project settings->Modules->Expand module->Python->Dependencies->select Python module SDK

    以下是我必须做的事情。(我可能忘记了我问题的一个重要方面,那就是它最初不是作为Python项目设置的,而是一个Java项目,其中包含一些Python文件。)

    项目设置->模块->加号按钮(添加模块)->Python

    然后,单击Python解释器旁边的“…”按钮

    在弹出的“配置SDK”对话框中,单击“+”按钮。选择“Python SDK”,然后选择“我的查找器”对话框中显示的默认“Python”快捷方式


    等5分钟左右。阅读一些生产技巧。:)

    单击“确定”

    等待系统重建一些索引


    万岁!我的模块的代码提示又回来了

    只需创建并添加Python SDK

    File -> Project Structure -> Project -> Project SDK -> new
    
    并选择Python解释器的安装路径(用于 例如,windows中的
    C:\Python26
    ,Linux中的
    /usr/bin/python2.7
    )作为主路径


    相关讨论:

    如果您的Python SDK配置正确,但仍面临无法识别内置代码的问题,请尝试以下操作:

    File -> Invalidate Caches/Restart
    
    使用(参见JetBrains文档链接)

    在我的情况下,我需要
    箭头
    。所以,我补充道

    arrow==0.7.0

    到我的项目
    requirements.txt


    然后Intellij在我第一次用Python脚本编写导入箭头时提示我添加库,我的问题与@Toddarooski的问题类似,只是我在“依赖项”选项卡下的模块没有列出SDK。我右键单击“SDK”,从下拉菜单中选择编辑,然后选择我的Python SDK。这就解决了问题。

    这就是我解决问题的方法(我导入了项目,它只显示在那里,新创建的文件没有显示这些错误):

    1) Command+alt+R(windows情况下的控件)

    2) 将出现调试窗口,选择您的文件并按右箭头(->),然后选择编辑,然后按enter键(将出现编辑配置设置窗口)

    3) 在配置下,您可以在底部看到错误(请选择具有有效python sdk的模块),因此在python解释器中,选中使用指定解释器,然后在下拉列表中选择您的python版本

    (如果没有python,请使用以下链接下载intelliJ的python插件

    4) 单击应用,然后关闭它

    答对了,结束了

    另一个可能的解决方案(解决了我的问题) 您可能已经正确地配置了环境,但由于某种原因,它在此过程中发生了故障。在这种情况下,请转到:

    file > project settings > modules
    
    部署SDK列表并查找末尾带有
    [invalid]
    的红线。 如果找到一个,则必须重新创建python sdk

    您以前使用的SDK可能也在那里,但不是红色的。删除它

    现在,您可以单击
    new
    按钮并添加您喜爱的python virtualenv。现在应该可以了。

    帮助我的几个步骤(上面提到了其中一些步骤):

    通过以下方式打开项目结构:

    命令+;(mac用户) 或 右键单击项目
    ->
    打开模块设置

  • Facets
    ->
    +
    ->
    Python
    ->
    ->
    确定
  • 模块
    ->
    Python
    ->
  • Project
    ->
    Project SDK
    ->
  • SDK
    ->

  • 单击
    OK

    我在
    main.py的运行/调试配置中取消选中以下选项后,使其工作

    将内容根添加到PYTHONPATH

    将源根添加到PYTHONPATH


    这是在我使缓存无效并重新启动之后

    就连我在Pycharm中的Intellisense也不适用于时间之类的模块 我的系统中的问题是没有选择解释器 转到文件-->设置…(Ctrl+Alt+S) 打开项目解释器

    就我而言,选择了。我选择了可用的python解释器。 如果不可用,您可以添加新的解释器。

    (解决了我的问题) 文件->项目结构->模块->添加(小加号)->导入模块->添加包含文件的路径(例如src/mymodule)->从现有源创建模块->下一步->下一步->完成。
    您应该在无法导入的目录中看到一个带有.iml的文件;这应该可以做到

    v12.1.4没有“项目设置”>“方面”菜单选项,但是@db42的解决方案起了作用。我创建了一个方面,但它不起作用,您的答案就是解决方案!!太棒了!:)古怪的我不知道facet是什么,所以我查了一下,下面的页面没有显示python是一个可用的facet。IntelliJ IDEA 14 Ultimate具有此功能,它在不破坏我的Java模块det的情况下完美工作