我将数据写入数据库,所以我想以低权重的格式写入行。 utf8中俄语的一个字符占2个字节,而koi8-r编码中的一个字符仅占1个字节(我只对俄语和英语字母感兴趣,其他字符可以忽略)。
在Python中,我将英语-俄语字符串转换为koi8-r时,得到了一个奇怪的序列:
utf = 'My string, Моя строка'
koi = utf.encode(encoding='koi8-r', errors='ignore')
koi字节:b'我的字符串,\ xed \ xcf \ xd1 \ xd3 \ xd4 \ xd2 \ xcf \ xcb \ xc1'
当我将这些值写入数据库时,出现写入错误。 如何以“小格式”转换数据?
答案 0 :(得分:0)
代码工作正常,您将其转换为字节,因此出现错误,您可以通过以下简单方法检查代码是否正常:
utf = 'My string, Моя строка'
koi = utf.encode(encoding='koi8-r', errors='ignore')
print(koi)
print(koi.decode("koi8-r"))
输出将是:
'My string, Моя строка'