PyCharm 2021.3 已发布,此版本终止对 Mako、Buildout 和 Web2Py 的支持,同时带来了一些新特性:
Poetry 支持
PyCharm 现在支持 Poetry ,并为 pyproject.toml 文件提供开箱即用的代码补全功能。
![]()
此外,PyCharm 现在支持 PEP 612 - 参数规范变量,这是 Python 3.10 中的另一个新功能。
Web 开发(pro)
FastAPI 支持
FastAPI 是一种流行的用于构建 API 的高性能 Python Web 框架,现在在 PyCharm 中得到支持。选择 FastAPI 项目类型,让 PyCharm 安装所有依赖项,然后创建运行/调试配置。或者,也可以使用 PyCharm 打开现有 FastAPI 项目并自行创建 FastAPI 运行配置。 PyCharm 将检测应用程序并运行 Uvicorn。
![]()
现在可以更轻松地使用“test.http”文件来测试 HTTP 端点,直接从编辑器将 GET、POST 和其他请求类型发送到应用程序端点。
![]()
FastAPI 和 Flask 的新端点工具窗口
因此 PyCharm 2021.3 为 FastAPI 和 Flask 项目类型引入了新的 Endpoints(端点)工具窗口。
开始处理新项目或现有项目后,PyCharm 将扫描路由并将其列在 Endpoints(端点)工具窗口中,您可以在该窗口中对 URL 进行代码补全、导航和重构。 此工具窗口还提供了对端点的更好概览和对文档的快速访问。
![]()
其他改进:
- PyCharm 不再要求使用“<”开始 HTML 标记来获取代码补全建议。
- 现在可以使用新的 Update ‘package name’ to the latest version(将“软件包名称”更新到最新版本)检查直接从编辑器将 package.json 文件中的 npm 软件包更新到最新版本。
- 输入 URL 并使用 ES6 文件中导入路径的快速修复下载远程 ES6 模块。
全新 Jupyter Notebook 体验
新的 Jupyter Notebook 界面
Notebook 支持现在更加流畅。 PyCharm 现在原生提供经典 Jupyter Notebook UI,同时包含 IDE 中的所有强大工具,包括自动导入、代码补全和重构功能。
![]()
热门快捷方式
添加了对所有标准 Jupyter 快捷方式的支持,包括使用 shift+enter 运行单元格、通过单击在命令和编辑器模式之间切换、使用箭头键在单元格上导航等等
![]()
交互式输出
PyCharm Pro 现在完全支持流行的科学库(如 Plotly、Bokeh、Altair、ipywidgets 等)使用的静态或基于 JavaScript 的输出,以及对 DataFrames 的丰富支持。
![]()
调试能力
在 Jupyter notebook 中进行调试,停在断点处、单步执行代码、浏览和管理变量的状态等等。
![]()
远程开发 (BETA、PRO)
PyCharm Pro 现在通过 JetBrains Gateway 支持远程开发工作流的测试版。PyCharm 用户可以从世界任何地方连接到远程机器,运行 PyCharm 的后端,可以在本地运行的同时利用远程计算能力。
要试用它,只需单击 欢迎屏幕上的远程开发,选择SSH 选项 并按照向导提供凭据,建立连接,然后在服务器上下载 IDE。
此功能处于测试阶段,有关更多详细信息,请参阅 文档。
![]()
用户体验改进
下载流行 Python Packages (PRO) 的共享索引
PyPI 上流行的软件包(例如 Numpy、Pandas、Matplotlib、Sqlalchemy、Scikit-image、Plotly、Scipy 等)的用户现在可以下载预构建的索引,以加快 IDE 索引时间。这些共享索引不包含在 PyCharm 安装中,因此 IDE 将在下载任何索引之前请求许可。
![]()
拆分运行工具窗口
现在可以将“运行”工具窗口拆分为多个选项卡,这样就可以同时运行多个配置,同时仍能访问其结果。只需将选项卡拖放到 “运行” 工具窗口内的突出显示区域即可将其拆分。
![]()
功能培训师:新的入门教程
如果您是 PyCharm 的新手,或者想重新了解使用方法,IDE Features Trainer 现在提供了入门导览和有关 PyCharm 中 Git 功能的课程。
要开始尝试,请点击欢迎屏幕上的“Learn PyCharm”(学习 PyCharm)或点击 IDE 主菜单中的 Help > Learn IDE(帮助 > 学习 IDE)。
![]()
评估来自调试器的表达式
在此版本中,Evaluate(评估)功能的曝光度得到改进。 现在可以在 Debug(调试)工具窗口中快速访问 Evaluate(评估)字段,而不必使用监视。
![]()
进一步改进:
- 可以在索引编制期间创建和编辑运行配置。
- 在 Python 软件包的安装过程中可以更详细地了解失败信息,从而更好地修正意外问题。
- 可以停止 PyCharm 在 Markdown 列表中的自动编号和缩进下一行。 转到 Preferences/Settings > Languages & Frameworks > Markdown(偏好设置/设置 > 语言和框架 > Markdown),禁用 Automatic assistance in the editor(编辑器中的自动辅助)。
- 现在可以在 Python 控制台中将多个单元添加到执行队列。 PyCharm 在前一次执行完成之前不会再阻止你的操作。
- 现在可以在 Preferences/Settings | Tools | SSH Configurations(偏好设置/设置 | 工具 | SSH 配置)下为 SSH 配置指定 HTTP 或 SOCKS 代理服务器。
版本控制
重新组织的版本控制设置
重新组织了 VCS 设置,使其更加醒目。 在 Preferences / Settings | Version Control(偏好设置 / 设置 | 版本控制)中,可以找到所有可用设置的列表,这些设置作为配置 VCS 的起点。
这些部分中的设置按最重要的进程组织:Commit(提交)、Push(推送)和 Update(更新)。 Directory mappings(目录映射)获得了单独的节点,后台操作默认开启。
![]()
远程分支的 Checkout and Rebase onto Current(签出并变基到当前分支)
如果需要签出所选分支并将其变基到当前签出的分支之上,现在可以使用 Checkout and Rebase onto Current(签出并变基到当前分支)操作。
该操作此前仅适用于本地分支。 在 PyCharm 2021.3 中,您也可以将其用于远程分支。
![]()
“Push all up to here” 操作选项
新的 Push all up to here(推送此前所有提交)操作允许您只推送当前确信的提交,将其他提交留待以后处理。 这将使你可以推送在 Git 工具窗口的 Log(日志)选项卡中所选及其之前的提交。 要使用此操作,首先右键点击停止处的提交,调用上下文菜单,然后选择新的 Push All up to Here(推送此前所有提交)操作。
![]()
数据库(PRO)
新的数据库差异窗口
上下文菜单提供了新的数据库差异窗口。 它具有更好的 UI,并且清楚显示了执行同步后您将获得的结果。
![]()
图例显示了颜色对潜在结果的含义:
- 绿色和斜体:将创建对象。
- 灰色:对象将被删除。
- 蓝色:对象将被更改。
Script preview(脚本预览)选项卡显示结果脚本,可在新控制台中打开或从此对话框运行。 此脚本应用更改后使右侧数据库(目标)成为左侧数据库(源)的副本。
除了 Script preview(脚本预览)选项卡,数据库差异窗口底部窗格中还有两个选项卡:Object Properties Diff(对象属性差异)和 DDL Diff(DDL 差异)。 它们显示源数据库和目标数据库中对象的特定版本之间的差异。
数据编辑器聚合
可以显示一系列单元格的聚合视图。这是一项期待已久的功能,可帮助你管理数据而不必编写额外的查询!这使得数据编辑器更强大且更易于使用,使其更接近 Excel 和 Google 电子表格。
![]()
要使用此功能,首先选择要查看视图的单元范围,然后点击鼠标右键并从菜单中选择 Show Aggregate View(显示聚合视图)。
进一步改进: