当前位置: 首页 > 面试题库 >

如何将unicode转义序列转换为python字符串中的unicode字符

翟博雅
2023-03-14
问题内容

当我尝试使用“ unicode(head.contents [3])”获取标签的内容时,我得到类似于以下的输出:“ Christensen Sk \
xf6ld”。我希望转义序列作为字符串返回。如何在python中做?


问题答案:

假设Python将名称视为普通字符串,则首先必须将其解码为unicode:

>>> name
'Christensen Sk\xf6ld'
>>> unicode(name, 'latin-1')
u'Christensen Sk\xf6ld'

实现此目的的另一种方法:

>>> name.decode('latin-1')
u'Christensen Sk\xf6ld'

注意字符串前面的“ u”,表示它是未编码的。如果进行打印,则正确显示带重音的字母:

>>> print name.decode('latin-1')
Christensen Sköld

顺便说一句:必要时,您可以使用de“ encode”方法将unicode转换为UTF-8字符串:

>>> name.decode('latin-1').encode('utf-8')
'Christensen Sk\xc3\xb6ld'


 类似资料:
  • 问题内容: 我需要将unicode字符串转换为具有以unicode编码的非ascii字符的字符串。例如,字符串“汉字Max”应显示为“ \ u6F22 \ u5B57 Max”。 我尝试过的 的不同组合 新的String(sourceString.getBytes(encoding1),encoding2) Apache StringEscapeUtils也会转义ascii字符,例如双引号 Str

  • 问题内容: 我有一个包含unicode字符等的字符串,以某种方式不被我接收,但被作为接收。如何将其转换回unicode? 显然不是答案。那是什么 问题答案: Unicode转义仅适用于unicode字符串,因此 实际上是由6个字符组成的字符串:“ \”,“ u”,“ 2”,“ 0”,“ 2”,“ 6”。 要从中制作出unicode,请使用:

  • 我需要读入带有unicode转义的标准ascii样式字符串,并将其转换为包含utf8编码等价物的std::字符串。因此,例如“\u03a0”(包含6个字符的std::字符串)应转换为包含两个字符的std::字符串,分别为0xCE和0xA0,以原始二进制格式。 如果有一个简单的答案使用icu或boost我会很高兴,但我还没有找到一个。 (这类似于将Unicode字符串转换为转义ASCII字符串,但注

  • 问题内容: 我有unicode ,我希望它以字典格式。 我想要它的格式。 我试过了,但它返回的字符串不是字典。 谁能帮我? 问题答案: 您可以使用内置包: 帮助ast模块中的literal_eval函数: literal_eval(node_or_string) 安全地评估表达式节点或包含Python表达式的字符串。提供的字符串或节点只能由以下Python文字结构组成:字符串,数字,元组,列表,字

  • 问题内容: 在解析包含unicode转义序列的json字符串时,存在一个长期存在的错误。似乎需要修复该错误,这种错误可能很快就不会发生,因此我正在寻找一种在R中创建解决方法的方法,该方法在将序列提供给json解析器之前先取消序列化。 一些上下文:json数据始终是unicode,默认情况下使用,因此通常不需要转义。但是出于历史原因,json确实支持转义的unicode。因此json数据 和 是等效

  • 问题内容: 如果明确定义,以下unicode和字符串可以单独存在: 如果只分配了上述变量,如何在Python 2.5或2.6中将其转换为? 编辑: 我做了以下事情: 解决了我的问题。有人可以向我解释到底发生了什么吗? 问题答案: 您似乎混淆了编码。看来您真正想要的是等效于。 但是您似乎是被错误解码的UTF-8编码。您可以通过将unicode字符串转换为普通字符串来解决此问题。我不确定最好的方法是什