关于python 文件在linux终端中文乱码的问题

当在Linux终端遇到Python文件中文显示乱码时,可通过检查系统编码和文件编码来解决。首先,使用notepad++查看文件编码,确认是否为系统编码问题。若系统编码为utf-8,而文件编码为GB2312,可以使用iconv命令将文件转换为utf-8编码,从而解决乱码问题。

1. 判断是否是系统编码问题

步骤一 . 用notepad++打开python文件,如果文件中文显示乱码,则是系统编码问题。
步骤二. 确定系统编码问题后,在“设置”将“语言”改成“简体中文”。或者在Shell中,利用locale将系统语言改成中文。

2. 确定是否为文件编码是否和系统编码一致

步骤一.首先由locale命令可知系统编码为utf-8。如下图:
***@**:$ locale
LANG=en_US.UTF-8
LANGUAGE=zh_CN:en_US:en
LC_CTYPE=zh_CN.UTF-8
LC_NUMERIC=zh_CN.UTF-8
LC_TIME=zh_CN.UTF-8
LC_COLLATE="en_US.UTF-8"
LC_MONETARY=zh_CN.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER=zh_CN.UTF-8
LC_NAME=zh_CN.UTF-8
LC_ADDRESS=zh_CN.UTF-8
LC_TELEPHONE=zh_CN.UTF-8
LC_MEASUREMENT=zh_CN.UTF-8
LC_IDENTIFICATION=zh_CN.UTF-8
LC_ALL=
步骤二 确认python文件编码方式。如下图:

输入命令 “ enca 文件名”

***@**:$ enca Fs_Zh_TongBu.py
Simplified Chinese National Standard; GB2312

由上可知,"Fs_Zh_TongBu.py"文件的编码方式为 GB2312。

步骤二. 将python文件的编码方式与系统编码方式保持一直,均设为utf-8。

输入命令 "iconv -f 原编码方式 -t 目标编码方式 python文件 > 新的文件名“

***@**:$ iconv -f GB2312 -t utf-8 Fs_Zh_TongBu.py > destfile

将原python文件转换为以utf-8编码的新文件destfile。

步骤三 查看新的编码文件

如图所示,转码后中文显示正常。

***@**:$ cat destfile
############################################################################
# -*- coding: gbk -*-
# 文件标识:
# 摘    要:
#
# 当前版本:
# 作    者:
# 完成日期:
#####################################################
### 解决 Python 终端输出中文乱码的方法 #### 方法一:配置终端编码 为了确保终端能够正确显示中文字符,在命令行终端环境中,可以尝试调整系统的区域和语言设置以及终端本身的编码格式[^1]。 对于 Windows 用户来说,可以通过修改注册表来更改默认的代码页为 UTF-8 编码。而对于 Linux 或 macOS 用户,则可以在启动脚本(如 `.bashrc` 文件)中加入 `export LANG="zh_CN.UTF-8"` 来设定环境变量。 ```shell echo 'export LANG="zh_CN.UTF-8"' >> ~/.bashrc source ~/.bashrc ``` #### 方法二:VSCode 中配置 Python 运行环境 如果是在 VSCode 开发工具内遇到此问题,那么通过自定义执行器映射的方式可以让程序以指定参数运行从而避免乱码现象发生[^2]: 编辑工作区级别的 settings.json 文件,添加如下配置项: ```json { "code-runner.executorMap": { "python": "set PYTHONIOENCODING=utf8 && python" } } ``` 这会使得每次使用 Code Runner 插件执行 Python 脚本时都会先设置好合适的输入/输出流编码方式再调用解释器。 #### 方法三:IDE 设置文件编码选项 当上述两种方案都不能解决问题的时候,还可以考虑从 IDE 的层面入手进行优化处理[^3]。比如 PyCharm 和其他基于 IntelliJ 平台构建的产品都提供了全局性的文件编码管理功能;而 Sublime Text 及 Atom 类轻量级编辑器也允许用户手动指定项目内的所有文档采用统一的文字集标准。 具体操作路径通常是导航到菜单栏中的 **File -> Settings (Preferences on Mac)** ,接着找到 **Editor -> File Encodings** 下拉列表框,并将其值更改为 “UTF-8”。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值