gpt4 book ai didi

python - 如何在 Python 中通过 ASCII 字符串恢复 Unicode 字符串?

转载 作者:太空宇宙 更新时间:2023-11-04 01:45:30 25 4
gpt4 key购买 nike

在提问之前我想举个例子。

u_string = u'\xcb\xa5\xb5'
u_string
Out[79]: 'Ë¥µ'
asc_string = ascii(u_string)
asc_string
Out[81]: "'\\xcb\\xa5\\xb5'"

在这里,我终于得到了一个只包含ascii字符的ascii字符串(asc_string)。

我的问题是,如果我只有 asc_string,如何将其转换为原始 u_string(Unicode string)?

谢谢马丁

最佳答案

对于这种情况,最简单的完全正确的方法是 ast.literal_eval :

>>> import ast
>>> origversion = u'\xcb\xa5\xb5' # Leading u is unnecessary on Python 3
>>> asciiform = ascii(origversion)
>>> origversion == ast.literal_eval(asciiform)
True

之所以可行,是因为在字符串上使用 ascii 会添加引号和转义符,从而使字符串包含可重现原始字符串的字符串文字(它只是 repr,但坚持到 repr 中的纯 ASCII 字符); ast.literal_eval 旨在解析文字的规范 repr(ASCII 编码或非编码)以生成结果对象,在本例中为字符串。

关于python - 如何在 Python 中通过 ASCII 字符串恢复 Unicode 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59148902/

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