
文章插图
如果仍然没找到所需插件,你甚至可以自己开发一个 。
如果你找不到合适的插件,又不想自己开发,因为 PyPI 上有可用的包,你可以将这个包作为外部工具添加到 PyCharm 。以代码分析器 Flake8 为例 。
首先,在所选 Terminal app 中键入 pip install flake8,从而在虚拟环境中安装 Flake8 。或者也可以使用 PyCharm 集成的 Terminal:

文章插图
在 Mac 系统上点击 Preferences → Tools,在 Windows 或 Linux 系统中点击 Settings → Tools,选择 External Tools 。然后点击底部 (1) 处的 + 按钮 。在弹出的窗口中,输入细节并在两个窗口中点击 OK,如下图所示:

文章插图
上图中,Program (2) 指 Flake8,你可以在虚拟环境文件夹(bin)中找到它 。Arguments (3) 表示你想用 Flake8 分析的文件 。Working directory 表示项目目录 。
你可以把这里所有项的绝对路径写死,但这就意味着你无法在其他项目中使用该外部工具,只能在一个项目中针对一个文件使用该工具 。
因此你需要使用 Macros 。它是

文章插图
格式的变量,根据语境而变化 。例如,当你编辑 first.py 时,

文章插图
为 first.py,当你编辑 second.py 时,

文章插图
为 second.py 。你可以查看它们的列表,点击 Insert Macro… 按钮将其中一个插入 。此处你使用了 macros,它们的值会根据你目前处理的项目而改变,Flake8 将继续准确执行其工作 。
要想使用它,你需要创建文件 example.py,并在其中写入以下代码:

文章插图
上述代码故意破坏了 Flake8 的一些规则 。右键单击文件背景,选择 External Tools → Flake8 。Flake8 分析结果将出现在窗口底部:

文章插图
为了使效果更好,你可以为其添加快捷键 。在 Mac 系统中选择 Preferences,在 Windows 或 Linux 系统中选择 Settings 。然后,点击 Keymap → External Tools → External Tools 。双击 Flake8,选择 Add Keyboard Shortcut,出现以下窗口:

文章插图
上图中,快捷键是 Ctrl+Alt+A(本教程使用该快捷键) 。你可以在文本框中添加喜欢的快捷键,然后在两个窗口中点击 OK 。然后,你就可以用该快捷键,在 Flake8 的帮助下分析目前在处理的文件了 。
PyCharm Professional 功能PyCharm Professional 是 PyCharm 的付费版本,具备更多开箱即用的功能和集成 。这部分将概览其主要功能,以及官方文档链接(其中详细介绍了每一项功能) 。记住,以下功能在 PyCharm Community 版本中均不可用 。
Django 支持
Django 是最流行和最受喜爱的 Python web 框架,PyCharm 对 Django 提供广泛的支持 。要确保对 Django 的支持,需要执行以下步骤:
1.在 Mac 系统中打开 Preferences,在 Windows 或 Linux 系统中打开 Settings 。
2.选择 Languages and Frameworks 。
3.选择 Django 。
4.检查复选框 Enable Django support 。
5.应用更改 。
现在确保了对 Django 的支持,你在 PyCharm 中的 Django 开发之旅将轻松很多 。具体而言在创建项目时,你会得到一个专用的 Django 项目类型 。这表示,当你选择该类型时,你将拥有所有必要文件和设置 。这等同于使用 django-admin startproject mysite 。
你也可以在 PyCharm 内直接运行 manage.py 命令 。目前支持的 Django 模板,包括以下一些:
语法和错误高亮显示
代码补全
导航
block 名称补全
自定义标签和过滤器补全
标签和过滤器的快速文档
模板 debug 能力
除此之外,我们还可以在其他 Django 部分(如视图、URL 和模型)中执行代码补全、对 Django ORM 提供代码追踪支持(code insight support)、对 Django 模型提供模型依赖项关系图 。
数据库支持
现代数据库开发是一个复杂的任务,需要多个支持系统和工作流 。这也是 JetBrains 开发独立 IDE DataGrip 的原因 。DataGrip 是独立于 PyCharm 的产品,二者的应用场景和授权都不相同 。
推荐阅读
- 漫威超级争霸战抽水晶 漫威未来之战怎么获得水晶
- 漫威超级英雄争霸赛 漫威英雄对决卡牌
- 漫威超级争霸战灭霸 漫威谁能打得过灭霸
- 超级沙雕可爱的短句有哪些?
- EfficientNet模型的完整细节
- 简单网络的反向传播代码这么写就对了:分解步骤+完整实现
- 天玑8100|150W超级闪充+天玑8100-MAX!一加Ace开箱图赏
- 电池|一加Ace首发长寿版150W超级闪充:17分钟充满 电池寿命翻倍
- 初学者应该看的JavaScript Promise 完整指南
- 一次完整的JVM堆外内存泄漏故障排查记录
