我从一个表示为 u'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0' 的函数中得到一个字符串,但要处理它,我需要它是字节串(如 '\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0' )。

如何在不更改的情况下转换它?

到目前为止,我最好的猜测是采用 s.encode('unicode_escape') ,它将返回 '\\xd0\\xbc\\xd0\\xb0\\xd1\\x80\\xd0\\xba\\xd0\\xb0' 并每 5 个字符处理一次,以便 '\xd0' 成为一个表示为 '\xd0' 的字符。

最佳答案

ISO 8859-1(又名 Latin-1)将前 256 个 Unicode 代码点映射到它们的字节值。

>>> u'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0'.encode('latin-1')
'\xd0\xbc\xd0\xb0\xd1\x80\xd0\xba\xd0\xb0'

关于python - 将 unicode 字符串转换为字节字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11174790/

10-13 09:46