You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中Python读取土耳其字符文件打印乱码问题求助

解决VSCode中Python读取土耳其字符乱码问题

步骤1:确定文件实际编码

用chardet库检测文件真实编码,这是最可靠的方式:

import chardet

with open("text.txt", "rb") as f:
    detect_result = chardet.detect(f.read())

print(f"文件编码:{detect_result['encoding']}")

运行后会输出文件实际编码(比如ISO-8859-9,土耳其常用的Latin-5编码)。

步骤2:用正确编码读取文件

根据检测出的编码修改读取代码,比如编码为ISO-8859-9时:

with open("text.txt", encoding="iso-8859-9") as file:
    contents = file.read()
print(contents)

步骤3:适配VSCode终端编码

若读取正确但终端仍乱码,调整VSCode终端编码:

  • 按下Ctrl+,打开设置,搜索「Terminal > Integrated: Encoding」
  • 将值设置为文件对应的编码(比如iso-8859-9或utf-8)
  • 重启终端后再运行代码

也可通过代码强制适配终端编码,无需手动设置:

import sys

with open("text.txt", encoding="iso-8859-9") as file:
    contents = file.read()
# 将内容编码适配终端当前编码,避免乱码
print(contents.encode(sys.stdout.encoding, errors="replace").decode(sys.stdout.encoding))

步骤4:确认VSCode文件编码设置

打开text.txt后,查看VSCode右下角的编码标识:

  • 若显示编码与检测结果不符,点击该标识,选择「Reopen with Encoding」,选正确编码后保存文件,后续读取会更稳定。

内容的提问来源于stack exchange,提问作者EmreEmre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 08:37:08