gpt4 book ai didi

python - Python中的UTF-8编码问题,将utf-8与ascii字符串连接(实际上是插值)

转载 作者:太空宇宙 更新时间:2023-11-03 18:55:54 26 4
gpt4 key购买 nike

我有以下代码:

u"[%s] - %s" % (a, b.encode('utf-8'))

其中a是一个unicode字符串,b是一个经典的str

现在这给出了经典错误:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xf6' in position 2: ordinal not in range(128)

(位置2属于a)

为什么这不起作用?我想,如果我将字符串 b 设为 unicode 字符串,那么在将字符串连接在一起时,它不应该转换为 ascii 吗?

最佳答案

这个问题解决了,基本上我是个白痴,不知道重载__str__()方法和__Unicode__()方法之间的区别。当所有内容在从方法返回之前都转换为 str 时,就会发生整个错误。

将这个答案留在这里,以防有人遇到类似的问题并且不知道类的 __unicode__() 魔术方法。

关于python - Python中的UTF-8编码问题,将utf-8与ascii字符串连接(实际上是插值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17257343/

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