Python和chars

2024-09-27 00:20:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python字符集和德语字符有问题。我正在尝试使用mysqldb从数据库中获取字符串尝试以下操作:

array=result.fetch_row()[0]

如果我打印数组,我会得到所有值和字符串“f\xfcr”<;——这就是我需要的。在

但是如果我打印array[stringlocation],我得到代表66fc72的'f�r'(为什么不再是unicode了?)在

如果我把它写到一个文件:'fÃŒr'或十六进制66 C3 BC 72

我认为这不是mysqldb的问题。我得不到我需要的炭。在

注意:我使用的是集合名称拉丁1。如果我使用utf8,我将得到双倍数:f\xc3\xbcr

谢谢你的帮助!在


Tags: 字符串lt数据库代表数组fetchresult字符
1条回答
网友
1楼 · 发布于 2024-09-27 00:20:41

如果'f\xfcr'是从数据库返回的内容,并且与您需要写入文件的内容相同,则唯一的问题是打印时显示的内容。为此你需要做一个翻译。在

>>> print 'f\xfcr'.decode('latin1')
für

这是因为print命令将自动将decode生成的Unicode转换回显示器使用的字符集。在

相关问题 更多 >

    热门问题