python去掉 unicode 字符串前面的u方法

作者:Pd11r 时间:2021-03-02 20:53:33 

有时我们会碰到类似下面这样的 unicode 字符串:


u'\xe4\xbd\xa0\xe5\xa5\xbd'

这明显不是一个正确的 unicode 字符串,可能是在哪个地方转码转错了。

我们要想得到正确的 unicode 字符串首先就必须先将这个字符串转成非 unicode 字符串, 然后再进行解码。按照普通的办法进行 encode 肯定是不行的,因为这不是一个正确的 unicode 字符串:


In [1]: u'\xe4\xbd\xa0\xe5\xa5\xbd'.encode('utf8')
Out[1]: '\xc3\xa4\xc2\xbd\xc2\xa0\xc3\xa5\xc2\xa5\xc2\xbd'

In [2]: print u'\xe4\xbd\xa0\xe5\xa5\xbd'.encode('utf8')
盲陆聽氓楼陆
那如何才能得到我们想要的 \xe4\xbd\xa0\xe5\xa5\xbd 呢?

python 提供了一个特殊的编码( raw_unicode_escape )用来处理这种情况:

In [4]: u'\xe4\xbd\xa0\xe5\xa5\xbd'.encode('raw_unicode_escape')
Out[4]: '\xe4\xbd\xa0\xe5\xa5\xbd'

In [5]: u'\xe4\xbd\xa0\xe5\xa5\xbd'.encode('raw_unicode_escape').decode('utf8')
Out[5]: u'\u4f60\u597d'

In [7]: print u'\u4f60\u597d'
你好

来源:https://blog.csdn.net/qq_33020901/article/details/78391789

标签:python,unicode,u
0
投稿

猜你喜欢

  • 发一新浪招聘的图片滚动控制JS效果

    2011-08-10 19:17:25
  • sql server中通过查询分析器实现数据库的备份与恢复方法分享

    2012-05-22 18:41:58
  • ACCESS 2007出现“错误 '80040e14'“

    2008-06-19 13:21:00
  • PHP面向对象程序设计之类与反射API详解

    2023-11-19 12:44:12
  • Python实用日期时间处理方法汇总

    2022-10-21 03:07:48
  • python3去掉string中的标点符号方法

    2021-06-27 01:29:45
  • 如何在Access数据库中立即得到所插入记录的自动编号?

    2010-06-17 12:45:00
  • SqlServer 基础知识 数据检索、查询排序语句

    2011-11-03 16:46:12
  • 简单触发器的使用 献给SQL初学者

    2011-09-30 11:27:49
  • 使用PHP获取网络文件的实现代码

    2023-09-09 08:41:53
  • Python实现的数据结构与算法之基本搜索详解

    2021-07-25 03:47:44
  • MySQL数据库中与 ALTER TABLE 有关的问题

    2009-01-14 11:57:00
  • 解决Microsoft VBScript 运行时错误 (0x800A0046) 没有权限的解决方案

    2009-09-03 13:28:00
  • Python Pygame实战之打砖块小游戏

    2021-04-10 01:41:11
  • PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)

    2023-10-14 02:31:42
  • 彻底搞懂Python字符编码

    2023-10-14 01:05:03
  • 事件检测

    2009-04-11 18:03:00
  • 基于go微服务效率工具goctl深度解析

    2023-07-12 03:57:13
  • 前端也应关注安全

    2009-03-16 17:02:00
  • 加密处理使密码更安全[CFS编码加密]

    2008-03-19 13:30:00
  • asp之家 网络编程 m.aspxhome.com