PyCharm(Python IDE),是JetBrains于2010年推出的一种可以帮助用户在使用Python语言开发时提高其效率的工具。[1][2][5]
2010年10月13日,JetBrains正式推出PyCharm1.0版本,为Python、Django和Google应用引擎开发人员提供了一套完整的工具。[6]它可以调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制等。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。[1]截至2023年11月14日,PyCharm已更新至2023.2.4版本。[7]
产品简介
PyCharm 是由JetBrains公司开发的一款Python开发工具,它与2010年推出。它在 Windows、Mac OS 和 Linux 操作 系统中都可以使用。它具有语法高亮显示、Project(项目)管理代码跳转、智能提示、自动完成、调试、单元测试和版本控制等一般开发工具都具有的功能。另外,PyCharm 还支持在 Django(Python 的 Web 开发框架)框架中进行 Web 开发。[2][4]同时它还支持Google App Engine、[8]IronPython、PyPy和Cython。这些功能在先进代码分析程序的支持下,使 PyCharm成为Python专业开发人员使用的有力工具。[9][5]
历史发展
PyCharm未推出以前,Python开发还使用的是Java IDE IntelliJ IDEA开发Python插件,但Python的IDE也很有需求。随后2010年1月30日,JetBrains团队推出了针对Python的开发工具PyCharm预览版,并计划2010年中旬推出1.0版本。[2]
2010年9月28日,官方博客中发布消息PyCharm1.0版本很快推出,[10]同年10月13日,JetBrains正式推出PyCharm1.0版本,为Python、Django和Google应用引擎开发人员提供了一套完整的工具。[6]2011年12月13日,PyCharm2.0正式发布,它的支持的技术范围进一步扩大。[11]
2013年10月23日,JetBrains发布PyCharm3.0版本,该版本支持SQLAlchemy、PyramidWeb框架、Web2Py框架等和若干问题修改。[12]次年11月19日,PyCharm的4.0版本发布,该版本改进了Python/ Django控制台工具窗口和其他问题修改。[13]2018年9月21日,JetBrains发布PyCharm2018.2.4版本,该版本修复了若干bug。[14]2020年1月22日,PyCharm2019.3.2版本发布,该版本修改了PyCharm的调试器在某些情况下会忽略断点的问题等。[15]
2023年4月24日,PyCharm2023.1版本正式发布,该版本带来了新的ui,新的组件等功能同时也修复了其他bug。[16]同年11月6日,PyCharm2023.2.4发布。[7]
智能代码辅助功能
PyCharm提供智能代码补全、代码检查、实时错误高亮显示和 快速修复,还有自动化代码重构和丰富的导航功能。[17]

智能代码编辑器
PyCharm的智能代码编辑器可为Python、JavaScript、CoffeeScript、TypeScript、CSS和热门模板语言等提供一流支持。 充分利用可感知语言的代码补全、错误检测和实时代码修复。[17]
智能代码导航
使用智能搜索跳到任何类、文件或符号,甚至任何IDE操作或工具窗口。 只需点击一下即可切换到声明、超级方法、测试、用法和实现等。[17]
快速且安全的重构
利用安全的Rename和Delete、Extract Method、Introduce Variable、Inline Variable或Inline Method和其他重构以智能方式重构您的代码。 语言和框架专用重构可以帮助您执行项目级更改。[17]
代码分析
多个代码检查会在您输入时验证Python代码并检查整个项目是否存在可能的错误。[18]
内建开发者工具
PyCharm大量的开箱即用工具包括集成的调试器和测试运行程序,有Python分析器、内置的终端,与主要VCS的集成和内置的数据库工具, 利用远程解释器的远程开发能力,集成的ssh终端,以及与Docker和Vagrant的集成。[3]
调试、测试和性能分析
PyCharm为Python和JavaScript使用带图形化UI的强大调试器。 使用编码辅助与基于GUI的测试运行程序创建和运行开发者的测试。 利用Python分析器集成完全控制开发者的代码。[3]
VCS、部署和远程开发
PyCharm通过统一的UI使用Git、SVN、Mercurial或其他版本控制系统来节省时间。 在远程机器上运行和调试应用程序,并轻松地为远程主机或虚拟机配置自动部署,利用Vagrant和Docker管理代码基础架构。[3]
数据库工具
PyCharm可以直接从IDE访问Oracle、SQL Server、PostgreSQL、MySQL和其他数据库。开发者使用PyCharm编辑SQL代码,运行查询,浏览数据以及更改架构。[3]
Web 开发
PyCharm除了支持Python外,它还为各种Python Web开发框架、特定的模板语言、JavaScript、CoffeeScript、TypeScript、HTML/CSS、AngularJS和Node.js等提供支持。[3]
Python Web框架
PyCharm为现代Web开发框架(例如Django、Flask、Google App Engine、Pyramid和web2py)提供了丰富的框架专用支持,包括Django模板调试器、manage.py和appcfg.py工具、特殊的自动补全和导航功能等。[3]
JavaScript和HTML
PyCharm可为JavaScript、CoffeeScript、TypeScript、HTML和CSS,以及它们的现代替代者提供支持。 JavaScript调试器包含在PyCharm中并与 Django服务器运行配置相集成。[3]
动态编辑
PyCharm的Live Editing Preview让开发者能够在编辑器和浏览器中打开页面并在浏览器中立即查看对代码所作的更改。 它还会自动保存开发者的更改,浏览器会实时智能更新页面,显示开发者的编辑。[3]
科学工具
PyCharm可与IPython Notebook集成,提供交互式Python控制台,并且支持Anaconda以及多种科学包,包括Matplotlib和NumPy。[3]
交互式Python控制台
开发者可以在PyCharm中运行REPL Python控制台,这种控制台比标准控制台更具优势,它带有检查功能的实时语法检查、大括号与引号匹配,以及代码补全。[3]
科学栈支持
PyCharm内置了对科学库的支持,它支持Pandas、Numpy、Matplotlib和其他科学库,为开发者提供同类的代码智能、图表和数组查看器等。[3]
Conda集成
PyCharm使每个项目具有单独的Conda环境能够保持依赖项独立,它能让开发者轻松地创建并选择合适的环境。[3]
可定制和跨平台的IDE
可自定义的UI
开发者可以对PyCharm UI进行自定义, 并使用经过优化的工作区,其中包含可定义的配色方案和键绑定等功能。[3]
插件
IntelliJ平台开发为PyCharm带来了50多个不同性质的IDE插件,包括对其他VCS的支持,与不同的工具和框架集成以及Vim模拟等编辑器增强功能。[3]
跨平台IDE
快捷键
PyCharm快捷键包括几个预定义的关键点映射,它也允许开发者自定义常用的快捷方式。PyCharm会根据开发者的环境自动建议预定义的关键点映射来确保它与开发者正在使用的操作系统匹配,或者从开发者习惯的另一个IDE或编辑器(例如Emacs)中选择与快捷方式匹配的操作系统。[19]
版本发布
| 时间 | 版本号 | 版本描述 |
|---|---|---|
| 2011年6月6日 | 1.5 | • 文档支持 (external documentation, Epydoc and reStructuredText markup, etc.) • Django模板调试 • 在Django应用的数据库支持 (autodetection, .sql files editing aids, database tables browsing, etc.) • 新的 'Move Class/Function' 重构 • 大量IDE改进和bug修复[20] |
| 2011年11月18日 | 2.0 Beta | 该版本增加了对Cython编码的支持,允许在项目中使用Mako和Jinja2模板,允许您检查代码的测试覆盖率,允许在一个窗口中打开多个项目,引入了JavaScript调试器,支持新的热门CoffeeScript语言,以及许多其他大大小小的更改[21] |
| 2011年12月13日 | 2.0 | •支持的技术范围扩大了。最大的添加是Mako和Jinja2模板语言。我们通过集成代码覆盖率、IPython、PyPy和一些新的静态代码分析可能性,加强了对Python核心的支持。其他重要的补充包括对Cython和CoffeeScript的支持。 •新的IDE UI使PyCharm在所有支持的平台上看起来更好。通过支持符号链接、改进与Dock的集成、Linux上文件管理器和PyCharm之间的拖放以及Mac OS X上的改进(如全屏支持),平台集成变得更好。 •经过显著改进的编辑器体系结构提供了更好的响应能力和更少的打字延迟,即使在巨大的文档中也是如此。在所有支持的平台上都可以确保更快的索引和IDE启动速度。[11] |
| 2012年4月19日 | 2.5 | • 远程解释器--能够确保在远端主机上运行完全集成的 Python 解释器 • 增加从 PyPI 浏览与安装包[22] |
| 2013年6月18日 | 2.7.3 | 该版本包括PyCharm的Python特定功能、底层平台和Web开发支持中的许多修复(CoffeeScript和TypeScript都获得了大量修复)[23] |
| 2013年10月23日 | 3.0 | • 全功能的嵌入式本地终端窗口 • 支持SQLAlchemy • 支持PyramidWeb 框架 • 支持 Web2Py 框架 • 新的 Python 重构 • 可配置的语言注入 • 改进 Python 代码分析 • Django 代码查看改进 • Python 控制台的变量查看 • 重复代码监测工具 • 对 PyQt 和 PyGTK 支持的改进[12] |
| 2014年2月5日 | 3.1 | •支持 Python 3.4 •支持 Django 1.6 •改进对 Vagrant 的支持 •性能优化[24] |
| 2014年4月5日 | 3.1.2 | • 修复了 Django 和 JavaScript • 修复了 Nose test runner • 修复了 SQL 支持和代码编辑器 • 修复了 Python 3.4 调试器和代码导航的问题 • 其他大量的改进 • Mac 用户:we turned off native Mac message boxes by defaultto avoid UI locks. You can always turn them back on by setting ide.mac.message.dialogs.as.sheets=true in theidea.properties configuration file.[25] |
| 2014年11月19日 | 4 | • 改进的Python/ Django控制台工具窗口。 • 现在,您可以在项目运行后或调试会话后让控制台保持开启。 • 调用继承树视图,供检视不同作用域内的函数调用。 • 更好的包管理。 • 单元测试的子项测试支持。 • 新的项目创建向导。 • 从WebStorm9和不断增长的IntelliJ平台继承的许多改进[13] |
| 2014年11月25日 | 4.0.1 | •修复了一个导致无限索引的问题;代码完成和检查功能相关的 bug 修复 •修复了 matplotlib 支持相关的问题;修复了远程解析器支持和一些 Django 的支持相关的问题[26][27] |
| 2014年12月9日 | 4.0.2 | •集成调试器和 Django 测试运行器的 bug 修复 •VCS 支持方面的 bug 修复(Git 优先);改进模板语言自动检测 •修复了 Python 工作台远程解析的问题;修复 PyQt5 的调试 bug •修复使用 Shift+Enter 运行 Django [28][29] |
| 2014年12月12日 | 4.0.3RC | •修复了带有find操作的UI错误 •修复了挂起的远程调试器 •修复了嵌入式终端中的颜色设置 •修复了Django nose测试的测试运行程序[30] |
| 2015年1月7日 | 4.0.4 | 这次更新包含了很多改进:IPython Notebook集成、调试器、嵌入式本地终端、Git和Subversion支持、类引用解析、Lettuce支持、CSS支持[31] |
| 2015年2月27日 | 4.0.5RC | 该版本对PyPy的破解代码进行了关键修复,对未解决的NumPy函数进行了一些修复,以及对Django 1.7支持的一些重要修复[32] |
| 2015年3月10日 | 4.0.5 | 一个调试多进程Pyramid和Google App Engine项目的重要修复,几个Django 1.7支持的重要修复、几个未解决的NumPy函数的修复,以及一个使用Behave时的弃用警告的修复[33] |
| 2015年3月31日 | 4.0.6RC | Django ORM检查问题的修复,ManyToManyField解析错误的修复,增量搜索错误的修复、使用Jinja标记时HTML缩进中断的修复,Jinja2 HTML文件的结构视图中“无显示”错误的修复以及几个平台错误的修复[34] |
| 2015年8月28日 | 4.5.4 RC2 | PyCharm在长控制台输出的情况下挂起的修复 全球检查的性能改进 修复了使用调试器的评估窗口查看图像的问题[35] |
| 2018年9月21日 | 2018.2.4 | 各种小型管道nv改进 在支持fixture的pytest中修复了一个错误:以前,如果fixture中使用了yield语句,PyCharm会假设函数的返回类型是Generator。现在,可以推断出正确的返回类型,从而防止误报[14] |
| 2019年2月27日 | 2018.3.5 | 对到处搜索的行为进行了调整,使部分文件名匹配在结果中排名更高。见IDEA-203491 插件的重新设计导致了离线安装插件的问题。这个问题已经解决[36] |
| 2020年1月22日 | 2019.3.2 | •PyCharm的调试器在某些情况下会忽略断点的问题已经解决 •在FreeBSD上以提升的权限在远程解释器上运行代码现在可以正常工作 •SQL方言之间有很多小的差异,我们一直在努力确保数据库工具能够正确处理这些差异。在这个版本中修复了:PostgreSQL的\gset,MySQL的MEMBER OF,等等。在•PyCharm专业版中打开数据库工具窗口 •Node.JS调试器在运行[Pro-only]时编辑JavaScript代码后,现在将正确地在断点处停止[15] |
| 2020年10月7日 | 2020.2.3 | •“到处搜索”弹出窗口不再部分在屏幕外打开。 •修复了TypeVar的自动完成没有考虑其上限的错误。 •修复了一个影响Python控制台代码完成的回归。 •修复了Cython中对PEP-484兼容打字的支持。 •修复了pipenv锁生成错误消息的错误。 •修复了一个使Python解释器更新非常缓慢甚至“无限”的问题。 •修正了角度示意图的一个问题,现在已经正确加载了。 •修复了TypeScript项目中光学ts的性能问题[37] |
| 2021年12月29日 | 2021.3.1 | •修复了一个阻止Django在WSL中运行的错误。[PY-51679] •修复了PyCharm建议从集合导入抽象集合的错误。[PY-466344] •修复了一个在白色背景上以白色文本显示输出的错误。[IDEA-283193] •修复了一个错误,使工具窗口在调整大小时被移动到一个单独的窗口 •修复了在ClickHouse中使用数据库工具时在DateTime列中显示错误结果的错误。[DBE-7770][38] |
| 2022年12月1日 | 2022.3 | 该版本为在Python控制台中使用异步代码带来了改进的体验——为了调用协程,开发者现在可以在函数之外使用await关键字。Python软件包工具窗口现在可以帮助开发者从Anaconda软件包库(除了PyPI)中查找、安装和删除软件包。对于pandas DataFrames,有新的选项可以隐藏列,使用分页快速遍历行,并以各种格式导出DataFrames[39] |
| 2023年4月24日 | 2023.1 | •新UI •新组件 •更新了工具窗口间导航 •重新设计了调试工具窗口 •紧凑模式 •对远程 Jupyter Notebook 的支持 •更好的泛型类型推断 •一目了然地管理多个项目的软件包 •“Code Vision: 用法”内嵌提示 •Rename(重命名)重构的内联提示 •可以实现快速前端开发的 Astro 支持、改进的 GitHub 代码审查工作流、重做的提交检查行为,以及 Docker Compose 节点的 Dashboard(仪表板)标签页中所有 Docker Compose 容器的合并日志等[16] |
| 2023年7月26日 | 2023.2 | •Django支持更新〔PyCharm Professional〕 •黑色格式化程序集成 •运行任何内容 •AI助手〔有限访问〕〔PyCharm专业版〕 •GitLab集成〔PyCharm Professional〕 •其他更新[40] |
| 2023年11月6日 | 2023.2.4 | “提交”工具窗口中的绝对目录路径不再由于冗余复制父路径而占用太多空间。[IDEA-326271] 我们已经解决了无法从本地计算机的编辑器中复制文本并将其粘贴到Windows远程桌面上的编辑器中的问题。[IDEA-313776]。如果使用的是旧版本的Windows Server,可以转到“文件”|“设置”|“高级设置”,然后选择“在插入符号位置粘贴”选项,而不是“粘贴未经选择复制的行时”。此解决方法将修复剪贴板同步问题[7] |
系统要求
| Windows | macOS | Linux |
|---|---|---|
| •64 位 Windows 10 1809 及更高版本,或 Windows Server 2019 及更高版本 •最低 2 GB 可用 RAM,推荐 8 GB 系统总 RAM •3.5 GB 硬盘空间,推荐 SSD •最低屏幕分辨率 1024x768[41] | •macOS 10.15 及更高版本 •最低 2 GB 可用 RAM,推荐 8 GB 系统总 RAM •3.5 GB 硬盘空间,推荐 SSD •最低屏幕分辨率 1024x768[42] | •GNOME 或 KDE 桌面版 •glibc 2.27 •最低 2 GB 可用 RAM,推荐 8 GB 系统总 RAM •3.5 GB 硬盘空间,推荐 SSD •最低屏幕分辨率 1024x768[43] |
参考资料 43
- PyCharm Python 集成开发环境 — OSCHINA社区
- PyCharm: Py is for Python, Charm is about the IDE — jetbrains
- PyCharm功能 — jetbrains
- 初识Python — 清华大学出版社
- PyCharm:JetBrains为专业开发者提供的Python — jetbrains
- PyCharm, our new Python/Django IDE, is officially 1.0 — jetbrains
- PyCharm 2023.2.4 Is Out! — jetbrains
- Google App Engine — jetbrains
- 内建开发者工具 — jetbrains
- PyCharm 1.0 Release Candidate — jetbrains
- PyCharm 2 is here: double the charm, double the power! — jetbrains
- PyCharm 3.0 发布,提供免费开源版本 — 开源社区网
- Announcing General Availability of PyCharm 4 — jetbrains
- PyCharm 2018.2.4 — jetbrains
- PyCharm 2019.3.2 — jetbrains
- What’s New in PyCharm 2023.1 — jetbrains
- PyCharm功能 — jetbrains
- 智能代码辅助功能 — jetbrains
- Configure keyboard shortcuts — jetbrains
- PyCharm 1.5 发布,Python IDE — 开源社区网
- PyCharm 2.0 Beta is Here with a Pack of New Features — jetbrains
- PyCharm 2.5 发布,Python 集成开发环境 — 开源社区网
- PyCharm 2.7.3 — jetbrains
- PyCharm 3.1 发布,Python 集成开发环境 — 开源中国社区
- PyCharm 3.1.2 发布 — 开源中国社区
- PyCharm 4.0.1 正式发布 — 开源中国社区
- PyCharm 4.0.1 Release Candidate is out — jetbrains
- PyCharm 4.0.2 发布,Python 集成开发环境 — 开源中国社区
- Announcing the PyCharm 4.0.2 release update — jetbrains
- PyCharm 4.0.3 RC is available — jetbrains
- Announcing the PyCharm 4.0.4 release update — jetbrains
- PyCharm 4.0.5 RC is available — jetbrains
- Announcing the PyCharm 4.0.5 release update — jetbrains
- PyCharm 4.0.6 RC is available — jetbrains
- PyCharm 4.5.4 RC2 is available — jetbrains
- PyCharm 2018.3.5 — jetbrains
- PyCharm 2020.2.3 — jetbrains
- PyCharm 2021.3.1 Is Out! — jetbrains
- PyCharm 2022.3 Is Out! — jetbrains
- PyCharm2023.2:NewLiveTemplatesforDjango,BlackFormatterIntegration,RunAnything,andAIAssistant — jetbrains
- 下载PyCharm:JetBrains为专业开发者提供的Python — jetbrains
- 下载PyCharm:JetBrains为专业开发者提供的Python — jetbrains
- 下载PyCharm:JetBrains为专业开发者提供的Python — jetbrains
