gpt4 book ai didi

python - 无法在Python中的中文字符串中逐字符打印

转载 作者:太空宇宙 更新时间:2023-11-03 15:15:11 24 4
gpt4 key购买 nike

我的 test.txt 文件包含这些字符:

地藏菩萨本愿经卷上
忉利天宫神通品第一

我有这个简单的程序:

f = open("test.txt")
text = f.read()
f.close()

print text

for c in text:
print c,

print "\n------------"

for i in range(len(text)):
print text[i],

结果如下:

地藏菩萨本愿经卷上
忉利天宫神通品第一
------------
å œ ° è — マ è マ © è ミ ¨ æ œ ¬ æ „ ¿ ç » マ å ヘ · ä ¸ Š
å ¿ ‰ å ˆ © å ¤ © å ® « ç ¥ ž é € š å “ チ ç ¬ ¬ ä ¸ €


å œ ° è — マ è マ © è ミ ¨ æ œ ¬ æ „ ¿ ç » マ å ヘ · ä ¸ Š
å ¿ ‰ å ˆ © å ¤ © å ® « ç ¥ ž é € š å “ チ ç ¬ ¬ ä ¸ €

如果我使用“打印文本”,“文本”就可以打印出来。但是这两种尝试逐字符打印的方法都失败了。

发生了什么事?

最佳答案

需要先将从文件读取的数据解码为utf-8:

>>> with open('abc1') as f:
text = f.read().decode('utf-8')
...
>>> print text
地藏菩萨本愿经卷上 忉利天宫神通品第一
>>> for x in text:
print x,
...
地 藏 菩 萨 本 愿 经 卷 上 忉 利 天 宫 神 通 品 第 一

或者使用io.open打开需要编码的文件:

>>> import io
>>> with io.open('abc1', encoding='utf-8') as f:
text = f.read()
>>> for x in text:
print x,
...
地 藏 菩 萨 本 愿 经 卷 上 忉 利 天 宫 神 通 品 第 一

关于python - 无法在Python中的中文字符串中逐字符打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21764531/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com