PyCharm 中文界面需安装 JetBrains 官方中文语言包插件并重启,同时将控制台和终端编码设为 UTF-8 并选用支持中文的字体;VS Code 需配置 PYTHONIOENCODING 环境变量、指定默认解释器及显式声明文件编码;Python 脚本处理中文路径时必须用 encoding='utf-8';Sublime Text 需自定义 Build System 并设置环境变量。

PyCharm 中文界面设置失败的常见原因
PyCharm 默认不自带中文语言包,直接在 Settings → Appearance & Behavior → System Settings → Language 里选“中文”没反应,是因为它依赖 JetBrains 官方插件。必须手动安装 Chinese (Simplified) Language Pack / Plugin 才能生效。
实操建议:
- 打开
Settings → Plugins,搜索Chinese,安装官方出品的Chinese (Simplified) Language Pack(注意认准作者是JetBrains) - 安装后重启 PyCharm,再进
Settings → Editor → General → Console → Default encoding,把Console encoding改成UTF-8,否则中文 print 可能乱码 - 如果终端(Terminal)仍显示问号或方块,需额外在
Settings → Tools → Terminal中将Shell path对应的终端编码也设为 UTF-8,并确认系统字体支持中文(如 Windows 用Consolas不行,换成Microsoft YaHei Mono)
VS Code 中 Python 输出中文乱码的根源与修复
VS Code 运行 Python 脚本时 print("你好") 显示 ?? 或空格,通常不是编辑器语言问题,而是 Python 解释器启动环境未正确声明编码,尤其在 Windows 上默认用 GBK。
关键动作:
立即学习“Python免费学习笔记(深入)”;
- 在 VS Code 的
settings.json中添加:"python.defaultInterpreterPath"确保指向你实际使用的 Python(比如C:\\Python39\\python.exe),避免混用 conda 和系统 Python - 在代码最顶部加
# -*- coding: utf-8 -*-(虽 Python 3 默认 UTF-8,但某些旧版解释器或 shebang 场景下仍需显式声明) - 更可靠的做法:在运行配置中强制指定环境变量,在
.vscode/launch.json的env字段加入:"PYTHONIOENCODING": "utf-8"
Python 脚本内处理中文路径或文件名报错 UnicodeEncodeError
典型错误信息:UnicodeEncodeError: 'gbk' codec can't encode character '\u4f60',本质是 Windows 控制台(cmd/powershell)默认编码为 GBK,而 Python 尝试用系统编码输出 Unicode 字符串。
不要只改 sys.stdout.encoding —— 它只是读取值,不能 runtime 修改生效。正确做法:
- 用
open()读写中文路径文件时,**必须显式指定encoding='utf-8'**,例如:with open("数据/用户信息.txt", encoding="utf-8") as f: content = f.read() - 调用
subprocess执行带中文参数的命令时,加上encoding='utf-8'和shell=True(Windows 下必要) - 若必须在 cmd 中直接运行脚本,可临时切换控制台编码:
chcp 65001(UTF-8),但这是会话级,不推荐作为长期方案
Sublime Text + Python Build System 中文支持陷阱
Sublime Text 默认 Build System(如 Python.sublime-build)在 Windows 下调用 python -u "$file",但不会继承当前控制台的 UTF-8 设置,导致中文输出截断或异常退出。
安全配置方式:
- 复制默认
Python.sublime-build,另存为Python-UTF8.sublime-build - 在
cmd字段中替换为:{ "cmd": ["python", "-u", "$file"], "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "selector": "source.python", "env": {"PYTHONIOENCODING": "utf-8"} } - 确保 Sublime Text 自身菜单语言为中文(需下载对应语言包并重启),否则菜单项仍是英文,但不影响脚本执行
真正卡住人的地方,往往不是“怎么设语言”,而是“哪一层在用什么编码”——Python 解释器、终端、IDE 启动环境、文件系统、Build System,五层可能各自独立。一个中文字符要顺畅显示,得让这五层全部对齐 UTF-8,漏一层就出问题。










