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


198

我正在使用IntelliJ 10 IDEA Ultimate Edition。

我创建了一个新文件Test.py,并且IntelliJ已正确切换到Python解析模式。(我可以通过输入“ d”来确认这一点,它会弹出“ def”作为建议,然后正确点击选项卡会给我“ def:”)

但是,当我尝试此代码时...

import os

cwd = os.getcw <Ctrl-space>

发生两件事...

  1. 我在os下面有一个乱七八糟的下划线,将鼠标悬停在它上面给我一条“未解决的参考'os'”消息
  2. 当我期望看到“ getcwd”时,没有任何建议可以击中上面的Ctrl-space。

我以为这一定是由于我没有正确配置IntelliJ以处理python模块而导致的,但是我不知道我缺少了什么。

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

Answers:


208

只需创建并添加Python SDK

File -> Project Structure -> Project -> Project SDK -> new

并选择Python解释器的安装路径(例如,C:\Python26在Windows和/usr/bin/python2.7Linux中)作为主路径。

相关讨论:http : //devnet.jetbrains.net/thread/286883


6
今天仍然如此。
OSX-

2
今天在OSX El Capitan上,我使用了这个技巧(谢谢!);FWIW,python解释器(我安装了2.6和2.7)在中/Library,但是IntelliJ在创建virtualenv时发现它们很好。
Dawngerpony

20
做到了,没有改变。
OrangeDog

5
对于使用自制安装的Python版本的Mac(由于对系统目录的限制,建议使用El Capitan及更高版本)/usr/local/bin/python
Dawngerpony

除此之外,我还必须设置构面(请参见下面的@linuts答案)
Janac Meena,

134

您是否设置了python解释器构面?

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

Project settings -> Facets -> expand Python click on child -> Python Interpreter

然后:

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


1
v12.1.4没有“项目设置”>“构面”菜单选项,但是@ db42的解决方案确实有效
Trindaz 2013年

我已经创建了一个构面,但它不起作用,您的答案就是解决方案!!太好了!:)
Rodislav Moldovan

奇。我不知道它是什么构面,因此我进行了查找,并且以下页面未将python显示为可用构面。 jetbrains.com/idea/help/…–
netskink

1
IntelliJ IDEA 14 Ultimate具有此功能,并且它在不破坏db42答案的情况下就不会破坏我的Java模块检测的情况下完美运行。
Patrick M

完成此操作后,它甚至没有显示有关以前内置模块的建议
Bharat

75

如果您的Python SDK已正确配置,并且您仍然面临无法识别内置程序的问题,请尝试以下操作:

File -> Invalidate Caches/Restart

2
将虚拟ENV回5倍,这有助于帮我用IDEA 2016年2月1日之后
dlite922

添加虚拟环境后,这已为我解决了问题。
安德烈·贝尔贡佐

我发现退出并重新启动IntelliJ为我修复了它,不过我想这是同一回事
drevicko

18

这就是我要做的。(而且我可能忘记了我的问题的一个重要方面,这并不是最初设置为Python项目,而是设置为Java项目,其中包含一些python文件。)

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

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

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

等待约5分钟。阅读一些生产力提示。:)

点击确定

等待系统重建一些索引。

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


2
“等待大约5分钟。阅读一些生产率提示。” 很棒
Kirby

这显然解决了我的问题(也是我的项目最初是作为Java项目创建的)
Andrea Bergonzo

5

另一个可能的解决方法(解决了我的问题)

您可能已经正确配置了环境,但是由于某种原因,环境一直中断。在这种情况下,请转到:

file > project settings > modules

部署SDK列表,并[invalid]在末尾寻找一条红线。如果找到一个,则必须重新创建一个python sdk。

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

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


3

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

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

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

  1. 构面->+ ->Python -><您的项目> ->确定
  2. 模块->Python -><选择python解释器>
  3. 项目->Project SDK -><选择相关的SDK>
  4. SDK -><确保它是正确的>

点击OK

通过以下方式打开运行/调试配置:运行->编辑配置

  1. Python解释器-><确保它是正确的>

点击OK


1

这就是我解决问题的方式(我已经导入了项目,并且仅在此处显示,新创建的文件未显示那些错误):

1)Command + alt + R(在Windows中为Control

2)将出现“调试”窗口,选择文件并按向右箭头(->),然后选择“编辑”,然后按Enter(将出现“编辑配置设置”窗口)

3)在配置下,您会在底部看到错误(请选择一个带有有效python sdk的模块),因此在Python解释器中,选中“使用指定的解释器”,然后在下拉菜单中选择您的Python版本

(如果没有python,请使用以下链接https://www.jetbrains.com/help/idea/2016.3/installing-updating-and-uninstalling-repository-plugins.html下载intelliJ的python插件

4)单击应用,然后将其关闭。

宾果游戏完成了。


0

使用需求文件(请参阅指向JetBrains文档的链接)

就我而言,我需要arrow。所以,我加了

arrow==0.7.0

到我的项目 requirements.txt

然后Intellij提示我第一次import arrow使用Python脚本编写时添加库


0

我的问题类似于@Toddarooski的问题,除了我在“ Dependencies”选项卡下具有的模块未列出SDK之外。我右键单击“ SDK”,从下拉菜单中选择“编辑”,然后选择我的Python SDK。做到了。


0

在取消选中“运行/调试配置”中的以下选项后,我可以使用它 main.py

Add content roots to PYTHONPATH

Add source roots to PYTHONPATH

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


0

甚至我在Pycharm中的Intellisense都不适合时间模块,例如 系统中的问题没有选择口译员转到文件 -> 设置...(Ctrl + Alt + S)打开项目口译员

就我而言,项目口译员被选中。我选择了可​​用的python解释器。如果不可用,您可以添加一个新的解释器。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.