2、PyCharm:PyCharm的安装、设置字体、设置快捷键、PyCharm常用设置、调试

做DaVinci Config开发,说白了离不开一个好用的IDE。我见过不少同事用记事本硬写代码,调试时抓耳挠腮。嗯,今天咱们聊聊PyCharm,这个Python开发的神器。

2.1 PyCharm的安装

安装这事其实没啥技术含量,但我踩过坑。记得有一次我图省事,直接从某软件管家下载了社区版,结果发现缺少专业版才有的数据库工具和远程调试功能。后来做DaVinci Config的脚本开发时,远程调试那一步死活走不通。

我的建议是:

  • 版本选择:如果你只是写写简单的DaVinci Config脚本,社区版(Community)够用。但如果你要搞复杂的自动化工具链,或者需要远程调试,直接上专业版(Professional)。
  • 安装路径:别用默认的C盘路径。我习惯放在 D:\Tools\PyCharm,这样重装系统时不会丢配置。
  • Python解释器:安装完PyCharm后,第一件事就是配置Python解释器。我建议用虚拟环境(Virtualenv),避免不同项目间的包冲突。
小提示:DaVinci Config的脚本通常依赖特定版本的Python(比如3.6或3.8)。我建议在项目根目录下创建一个 requirements.txt,把依赖写清楚,方便团队协作。

2.2 设置字体

字体这事,看着小,但影响很大。我刚开始用PyCharm时,默认的字体看着眼睛疼,尤其是写DaVinci Config那种长脚本时,代码密密麻麻的。

我个人习惯这样设置:

  1. 打开 File -> Settings -> Editor -> Font
  2. 字体选 JetBrains Mono 或者 Consolas,这两个对程序员很友好
  3. 字号我设成 14,太小了伤眼,太大了代码显示不全
  4. 行间距(Line spacing)设成 1.2,这样代码看起来不挤

避坑指南:我曾经在项目中遇到过字体显示不全的问题,尤其是中文注释。后来发现是字体不支持中文。解决方案是:在 Settings -> Editor -> Font 里,把 Fallback font 设成 Microsoft YaHei 或者 SimSun

2.3 设置快捷键

快捷键这东西,用好了能省一半时间。我刚开始用PyCharm时,总觉得快捷键太多记不住。后来发现,其实常用的就那么几个。

我常用的快捷键(Windows版):

功能 快捷键 说明
搜索文件 Ctrl + Shift + N 快速定位DaVinci Config的脚本文件
搜索代码 Ctrl + Shift + F 全局搜索,找函数定义很方便
格式化代码 Ctrl + Alt + L 写脚本时保持代码整洁
运行当前脚本 Shift + F10 调试DaVinci Config脚本时常用
调试当前脚本 Shift + F9 断点调试,排查问题必备

自定义快捷键:

如果你觉得默认快捷键不顺手,可以改。打开 File -> Settings -> Keymap,搜索你想改的功能,右键修改即可。我习惯把 Ctrl + D 改成复制当前行,因为写DaVinci Config脚本时经常需要复制类似的配置代码。

注意:改快捷键时别和系统快捷键冲突。比如 Ctrl + Alt + 方向键 在Windows上默认是屏幕旋转,如果你改了PyCharm的快捷键,可能会被系统拦截。

2.4 PyCharm常用设置

PyCharm的设置项很多,但真正对DaVinci Config开发有用的,其实就几个。我整理了一下:

2.4.1 自动保存

PyCharm默认是自动保存的,但我建议把 Settings -> Appearance & Behavior -> System Settings -> Synchronization 里的 Save files on frame deactivation 勾上。这样你切换到其他窗口时,代码自动保存,避免丢失。

2.4.2 代码模板

写DaVinci Config脚本时,经常要写一些固定的代码结构,比如导入模块、定义函数。我习惯在 Settings -> Editor -> File and Code Templates 里设置模板。比如新建Python文件时,自动生成:

# -*- coding: utf-8 -*-
"""
DaVinci Config Script
Author: [你的名字]
Date: [当前日期]
"""
import sys
import os

def main():
    pass

if __name__ == "__main__":
    main()

2.4.3 文件编码

DaVinci Config的配置文件经常包含中文注释,如果编码不对,会出现乱码。我建议在 Settings -> Editor -> File Encodings 里,把 Global EncodingProject Encoding 都设成 UTF-8。同时勾选 Transparent native-to-ascii conversion

小技巧:如果你从别人那里接手项目,发现中文注释乱码,别慌。先检查文件编码,再检查PyCharm的编码设置。我遇到过好几次,都是编码不一致导致的。

2.5 调试

调试是开发中最重要的一环。说实话,我刚开始做DaVinci Config开发时,调试全靠print。后来发现,PyCharm的调试器比print好用一百倍。

2.5.1 设置断点

在代码行号旁边点击,就会出现一个红色圆点,这就是断点。我习惯在函数入口、条件判断、循环体里设置断点。比如:

def process_config(config_data):
    # 在这里设置断点
    for item in config_data:
        # 或者在这里设置断点
        if item['type'] == 'special':
            # 或者在这里设置断点
            handle_special(item)

2.5.2 调试窗口

启动调试后,PyCharm底部会出现调试窗口。常用的几个按钮:

  • Step Over (F8):单步执行,不进入函数内部
  • Step Into (F7):进入函数内部,查看细节
  • Step Out (Shift + F8):跳出当前函数
  • Resume Program (F9):继续执行到下一个断点

2.5.3 变量查看

调试时,你可以实时查看变量的值。在调试窗口的 Variables 面板里,能看到所有局部变量和全局变量。我习惯在变量上右键,选择 Add to Watches,这样变量会固定在 Watches 面板里,方便持续观察。

避坑指南:我曾经在调试DaVinci Config脚本时,发现变量值莫名其妙变了。后来发现是Python的引用传递问题。比如你修改了一个列表,其他引用这个列表的地方也会变。调试时一定要留意变量的内存地址。

2.5.4 条件断点

有时候你不想每次循环都停,只想在特定条件下停。这时候可以用条件断点。在断点上右键,输入条件表达式。比如:

item['value'] > 100

这样只有当 item['value'] 大于100时,程序才会暂停。这个功能在调试大量数据时特别有用。

2.5.5 远程调试

如果你用PyCharm专业版,还可以远程调试。比如你的DaVinci Config脚本运行在服务器上,但你想在本地调试。配置方法:

  1. 在服务器上安装 pydevd-pycharm
  2. 在PyCharm里配置 Run/Debug Configurations,选择 Python Remote Debug
  3. 在脚本里添加 import pydevd_pycharmpydevd_pycharm.settrace(...)
注意:远程调试时,本地和服务器上的代码版本必须一致。否则断点位置会错乱,调试结果也不准确。我吃过这个亏,调试了半天才发现本地代码比服务器上的旧。

好了,PyCharm的安装、设置和调试就聊到这儿。说白了,工具是死的,人是活的。多用、多试,慢慢就找到适合自己的节奏了。下一章咱们聊聊DaVinci Config的工程结构,这个很重要,搞错了后面全是坑。