在之前《Python集成开发工具的选择》一文中介绍了python初学者可以使用Jupyter Notebook,Jupyter Notebook简单易用,可以用来练习代码编写,但是实际生产开发环境使用这个工具是远远不够用的,因为实际软件开发中需要软件调试、版本管理、单元测试、软件发布,这些功能Jupyter Notebook所不具备的。今天就介绍一下python开发中最常用的IDE:PyCharm 。它由 JetBrains 开发,功能强大,广泛用于 Python 开发。
PyCharm 有两个版本一个是免费的社区版,一个是收费的免费企业版,
下图是pycharm社区版和企业收费版的功能的对比。
| 功能 | 社区版 (Community Edition) | 专业版 (Professional Edition) |
|---|---|---|
| 基本编辑和开发功能 | ✅ | ✅ |
| 代码补全 | ✅ | ✅ |
| 调试器和测试运行器 | ✅ | ✅ |
| VCS(版本控制)集成 | ✅ | ✅ |
| 局部历史记录 | ✅ | ✅ |
| Python 重构 | ✅ | ✅ |
| 代码检查和快速修复 | ✅ | ✅ |
| Python 控制台 | ✅ | ✅ |
| 集成终端 | ✅ | ✅ |
| Python 解释器配置 | ✅ | ✅ |
| Django 支持 | ❌ | ✅ |
| Flask 支持 | ❌ | ✅ |
| 其他 Web 框架支持(如 Pyramid、Web2py) | ❌ | ✅ |
| HTML, CSS 和 JavaScript 编辑器 | ❌ | ✅ |
| JavaScript 调试器 | ❌ | ✅ |
| Live Edit | ❌ | ✅ |
| Docker 集成 | ❌ | ✅ |
| 数据库和 SQL 支持 | ❌ | ✅ |
| IPython Notebook 支持 | ❌ | ✅ |
| 远程开发支持(SSH, Vagrant, WSL) | ❌ | ✅ |
| 科学工具(如交互式 Python 控制台、科学模式) | ❌ | ✅ |
| 多框架单元测试支持(pytest, unittest 等) | ✅ | ✅ |
| JavaScript、TypeScript 支持 | ❌ | ✅ |
| Python Web 框架模板语言支持(如 Jinja2) | ❌ | ✅ |
| 专业 IDE 功能(如 UML 视图、数据库工具) | ❌ | ✅ |
| Anaconda 支持 | ❌ | ✅ |
| 多语言支持(如 PHP, Ruby, Go, 等) | ❌ | ✅ |
| 高级调试功能(如 Attach to Process, 多个调试器配置) | ❌ | ✅ |
| 性能分析(Profiling) | ❌ | ✅ |
对于个人开发者和中小团队,免费的社区版已经够用了。当然你享受更多尊贵的服务而选择付费,也是没人拦着你的。接下来从软件安装、汉化、基础配置、软件调试、git版本管理、单元测试、打包发布等几个方面详细阐述PyCharm 的常用功能。
官方下载地址:https://www.jetbrains.com/zh-cn/pycharm/download/other.html

我的电脑是windows,就选择下载了windows社区版。



安装后选择路径:File->Settings->Plugins,在以下页面搜索:中文语言包,如下图搜索到的第一个就是汉化包,点击右下【OK】安装即可。

安装完成后,弹出页面点击【Restart】按钮重启即可。

在路径【文件】/【设置】/【编辑器】/【字体】打开设置字体页面。

在路径【文件】/【设置】/【编辑器】/【配色方案】打开设置配置颜色方案页面。

在路径【文件】/【设置】/【编辑器】/【文件编码】打开设置文件编码页面。

建议文件编码统一设置UTF8
在创建一个新的Python项目时可以根据需要设置虚拟环境,这个虚拟环境即可以选择virtualenv创建的虚拟环境也可以选择conda创建的虚拟环境。当然也可以选择不用虚拟环境,直接用本地python解释器,但是不建议这样做,这样做会给你带来很多麻烦。具体如何创建和使用虚拟环境请参考之前两篇文章《Anaconda的安装和使用》和
《virtualenv和virtualenvwrapper的使用》
以下是用conda创建虚拟项目步骤:
conda create --name pycharmpython=3.10



在实际开发过程中,我们会遇到程序有错误(bug)的情况,这个时候我们就需要通过调试找出问题,因为在在调试过程中可以观察程序每个变量在执行过程中的数值变化,通过观察这些数据变化我们就能发现并解决问题。当我们创建完项目后,我们编写一段程序,并用这个程序演示代码的调试过程。这个程序主要功能是在命令行,用户输入一个人的出生日期,程序计算出这个日期出生的人已经活了多少天,还有多少天退休。
代码如下:
from datetime import datetime
def calculate_days_of_life(birth_date, retirement_age=60):
"""
计算从出生日期到今天活了多少天,以及距离退休还有多少天。
:param birth_date: 出生日期,格式为 'YYYY-MM-DD'
:param retirement_age: 退休年龄,默认为60岁
:return: 一个元组,第一个元素是活了多少天,第二个元素是距离退休还有多少天
"""
# 将字符串日期转换为datetime对象
birth_date_obj = datetime.strptime(birth_date, '%Y-%m-%d')
# 获取当前日期
today = datetime.today()
# 计算活了多少天
days_lived = (today - birth_date_obj).days
# 计算退休日期
retirement_date = birth_date_obj.replace(year=birth_date_obj.year + retirement_age)
# 如果退休日期小于今天,则认为已经退休
if retirement_date < today:
days_until_retirement = 0
else:
# 计算距离退休还有多少天
days_until_retirement = (retirement_date - today).days
return days_lived, days_until_retirement
def main():
# 用户输入出生日期
user_birth_date = input("请输入您的出生日期 (格式 YYYY-MM-DD): ")
try:
# 调用函数并接收结果
days_lived, days_until_retirement = calculate_days_of_life(user_birth_date)
# 打印结果
print(f"您已经出生了 {days_lived} 天。")
if days_until_retirement > 0:
print(f"您距离退休还有 {days_until_retirement} 天。")
else:
print("您已经退休了。")
except ValueError:
print("输入的日期格式不正确,请确保使用 YYYY-MM-DD 格式。")
if __name__ == "__main__":
main()
这里对新手来讲介绍一下调试的基础操作:

pycharm已经集成git的版本管理功能,我们可以在pycharm中建立git本地仓库,并将代码托管到github上。
下面介绍pycharm中git的基本使用
打开路径【文件】/【设置】/【版本控制】/【Github】,点击"+"添加github账号。






打开路径【版本控制】/【创建Git仓库】


git remote add origin https://github.com/luohanxi0421/HermeticCode.git

实时模板允许你定义和插入可重用的代码片段,通过简单的快捷方式触发。这些代码片段可以包含变量占位符,自动替换为你在插入时指定的值。
if __name__ == '__main__':
main()
打开实时模板设置:【文件】/【设置】/【编辑器】/【实时模版】

创建新模板:
在 Python 模板组下,点击 +,选择 实时模板。
配置模板:
Abbreviation:abc
Description:创建类的代码
Template Text:
class $NAME$:
def __init__(self, $PARAM$):
self.$PARAM$ = $PARAM$
def $METHOD$(self):
pass

模版文本中像这种
P
A
R
A
M
PARAM
PARAM用两个$符包裹的就是变量,可以在编辑变量中设置他的值。

这里表达式可以动态给变量复制,比如表达式选择date(),$NAME$会替换为添加时的日期,默认值是静态赋值,这两个有一个赋值即可,两者都空着,生成代码时,变量占据的位置也同样空着。