gpt4 book ai didi

python - 无法在python中将ascii转换为utf-8

转载 作者:太空宇宙 更新时间:2023-11-04 06:51:09 24 4
gpt4 key购买 nike

我有波兰语单词“wąż”,意思是“蛇”

但我是从 ascii 格式的网络服务中获取的,所以:

snake_in_polish_in_ascii="w\xc4\x85\xc5\xbc"

有我尝试的结果:

print str(snake_in_polish_in_ascii) #this prints me w─ů┼╝

snake_in_polish_in_ascii.decode('utf-8')
print str(snake_in_polish_in_ascii) #this prints me w─ů┼╝ too

和这段代码:

print  str(snake_in_polish_in_ascii.encode('utf-8'))

引发异常:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 1: ordinal not in range(128)

我在具有波兰文化的 Windows Xp 上使用 Wing Ide。

在文件顶部我有:

# -*- coding: utf-8 -*-

我找不到解决它的方法。为什么我无法在输出中得到“wąż”?

最佳答案

这个表达式:

snake_in_polish_in_ascii.decode('utf-8')

不要就地改变字符串试试这样:

print snake_in_polish_in_ascii.decode('utf-8')

关于为什么当你执行 print snake_in_polish_in_ascii 你看到 w─ů┼╝ 的原因是因为你的终端使用 cp852 编码(中欧和东欧)试试这个要看:

>>> print snake_in_polish_in_ascii.decode("cp852")
w─ů┼╝

关于python - 无法在python中将ascii转换为utf-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5312011/

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