在 Python 中将 UTF-8 转换为字符串文字

2024-01-18

我有一个 UTF-8 格式的字符串,但不太确定如何将此字符串转换为其相应的字符文字。例如我有字符串:

我的字符串是:'Entre\xc3\xa9'

示例一:

这段代码:

u'Entre\xc3\xa9'.encode('latin-1').decode('utf-8')

返回结果:u'Entre\xe9'

如果我继续打印:

print u'Entre\xe9'

我得到结果:Entreé

这很棒并且接近我的需要。问题是,我无法将 'Entre\xc3\xa9' 设置为变量并通过步骤传递它,因为现在这会中断。有什么建议可以让它发挥作用吗?

Example:

a = 'Entre\xc3\xa9'
b = 'u'+ a.encode('latin-1').decode('utf-8')
c= 'u'+ b

我希望“c”的结果是:

Entreé

The u'' syntax 仅适用于字符串文字,例如在源代码中定义值。使用语法结果unicode正在创建的对象,但这不是创建此类对象的唯一方法。

你不能做一个unicode通过添加字节字符串中的值u在它的前面。但如果你打电话str.decode()使用正确的编码,您会得到unicode价值。反之亦然,你可以encode unicode对象到字节字符串unicode.encode().

请注意,当显示unicode对象,Python代表再次使用 Unicode 字符串文字语法(所以u'...'),以方便调试。您可以将表示形式粘贴回 Python 解释器并获取具有相同值的对象。

Your avalue 是使用字节字符串文字定义的,因此您只需要解码:

a = 'Entre\xc3\xa9'
b = a.decode('utf8')

你的第一个例子创建了一个Mojibake http://en.wikipedia.org/wiki/Mojibake,包含实际表示 UTF-8 字节的 Latin-1 代码点的 Unicode 字符串。这就是为什么您必须首先编码为 Latin-1(以撤消 Mojibake),然后从 UTF-8 解码。

您可能想阅读有关 Python 和 Unicode 的内容统一码指南 https://docs.python.org/2/howto/unicode.html。其他感兴趣的文章有:

  • 每个软件开发人员绝对必须了解 Unicode 和字符集的绝对最低限度(没有任何借口!) http://joelonsoftware.com/articles/Unicode.html作者:乔尔·斯波尔斯基

  • 实用的统一码 http://nedbatchelder.com/text/unipain.html作者:内德·巴切尔德

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Python 中将 UTF-8 转换为字符串文字 的相关文章

  • 使 django 服务器可以在 LAN 中访问

    我已经安装了Django服务器 可以如下访问 http localhost 8000 get sms http 127 0 0 1 8000 get sms 假设我的IP是x x x x 当我这样做时 从同一网络下的另一台电脑 my ip
  • 通过最小元素比较对 5 个元素进行排序

    我必须在 python 中使用元素之间的最小比较次数来建模对 5 个元素的列表进行排序的执行计划 除此之外 复杂性是无关紧要的 结果是一个对的列表 表示在另一时间对列表进行排序所需的比较 我知道有一种算法可以通过 7 次比较 总是在元素之间
  • Django:按钮链接

    我是一名 Django 新手用户 尝试创建一个按钮 单击该按钮会链接到我网站中的另一个页面 我尝试了一些不同的例子 但似乎没有一个对我有用 举个例子 为什么这不起作用
  • 如何在 Python 中检索 for 循环中的剩余项目?

    我有一个简单的 for 循环迭代项目列表 在某些时候 我知道它会破裂 我该如何退回剩余的物品 for i in a b c d e f g try some func i except return remaining items if s
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 如何从网页中嵌入的 Tableau 图表中抓取工具提示值

    我试图弄清楚是否有一种方法以及如何使用 python 从网页中的 Tableau 嵌入图形中抓取工具提示值 以下是当用户将鼠标悬停在条形上时带有工具提示的图表示例 我从要从中抓取的原始网页中获取了此网址 https covid19 colo
  • SQLALchemy .query:类“Car”的未解析属性引用“query”

    我有一个这里已经提到的问题https youtrack jetbrains com issue PY 44557 https youtrack jetbrains com issue PY 44557 但我还没有找到解决方案 我使用 Pyt
  • 如何加速Python中的N维区间树?

    考虑以下问题 给定一组n间隔和一组m浮点数 对于每个浮点数 确定包含该浮点数的区间子集 这个问题已经通过构建一个解决区间树 https en wikipedia org wiki Interval tree 或称为范围树或线段树 已经针对一
  • 添加不同形状的 numpy 数组

    我想添加两个不同形状的 numpy 数组 但不进行广播 而是将 缺失 值视为零 可能最简单的例子是 1 2 3 2 gt 3 2 3 or 1 2 3 2 1 gt 3 2 3 1 0 0 我事先不知道形状 我正在弄乱每个 np shape
  • 如何使用Python创建历史时间线

    So I ve seen a few answers on here that helped a bit but my dataset is larger than the ones that have been answered prev
  • 无法在 Python 3 中导入 cProfile

    我试图将 cProfile 模块导入 Python 3 3 0 但出现以下错误 Traceback most recent call last File
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 如何在Python中对类别进行加权随机抽样

    给定一个元组列表 其中每个元组都包含一个概率和一个项目 我想根据其概率对项目进行采样 例如 给出列表 3 a 4 b 3 c 我想在 40 的时间内对 b 进行采样 在 python 中执行此操作的规范方法是什么 我查看了 random 模
  • 如何在seaborn displot中使用hist_kws

    我想在同一图中用不同的颜色绘制直方图和 kde 线 我想为直方图设置绿色 为 kde 线设置蓝色 我设法弄清楚使用 line kws 来更改 kde 线条颜色 但 hist kws 不适用于显示 我尝试过使用 histplot 但我无法为
  • 对年龄列进行分组/分类

    我有一个数据框说df有一个柱子 Ages gt gt gt df Age 0 22 1 38 2 26 3 35 4 35 5 1 6 54 我想对这个年龄段进行分组并创建一个像这样的新专栏 If age gt 0 age lt 2 the
  • 有没有办法检测正在运行的代码是否正在上下文管理器内执行?

    正如标题所述 有没有办法做到这样的事情 def call back if called inside context print running in context else print called outside context 这将
  • 在 MySQL 中存储表情符号的编码问题:如何使用 Prisma ORM 在 NodeJS 中定义字符排序规则?

    亲爱的 Nodejs 专家和数据库专家 我们在 MySQL 数据库中存储表情符号和其他特殊字符时遇到问题 我们使用 Prisma 得到一个错误 这是我们使用的 ORM 参数无法从排序规则 utf8 general ci 转换为 utf8mb
  • 使用其构造函数初始化 OrderedDict 以便保留初始数据的顺序的正确方法?

    初始化有序字典 OD 以使其保留初始数据的顺序的正确方法是什么 from collections import OrderedDict Obviously wrong because regular dict loses order d O
  • 发送用户注册密码,django-allauth

    我在 django 应用程序上使用 django alluth 进行身份验证 注册 我需要创建一个自定义注册表单 其中只有一个字段 电子邮件 密码将在服务器上生成 这是我创建的表格 from django import forms from
  • 如何将输入读取为数字?

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 Why are x and y下面的代码中使用字符串而不是整数 注意 在Python 2

随机推荐

  • Android Studio“构建”选项卡没有指向文件和行的链接?

    如何启用它以便每个编译时错误都带有指向文件和行的链接 我的同事也是这样 在我的 IDE 上似乎有些东西被禁用了 我找不到什么和在哪里 帮助 None
  • PyCharm 中针对 Python 编译扩展的自动完成

    当使用编译扩展 例如 OpenCV Python 绑定 编写 Python 代码时 PyCharm 似乎不知道它们的可用性 导入标有灰色下划线 作为工具提示显示 未解析的引用 并且自动完成功能也不起作用 代码中已使用的函数名称除外 这不是由
  • 使用 TreeView 最小化 ViewState

    关于如何做到这一点有任何实用的提示 技巧吗 似乎没有很多关于如何做到这一点的信息 我正在将数据从数据库加载到 TreeView 中 最大节点数约为 100 我仍然对最小化 ViewState 感兴趣 我还将动态添加和删除节点 通过用户交互
  • MSQLSMS 中蓝色和粉色单词的含义

    Microsoft SQL Management Studio 突出显示了一些特殊单词 并用蓝色或粉红色将它们着色 我想知道哪个规则决定了要使用的颜色 例如 考虑以下两个语句 SELECT FROM myTable UPDATE myTab
  • 由于某种原因无法从 p 标签获取文本 - Selenium (Python)

    我正在尝试用 Selenium 抓取页面 示例 HTML 如下所示 来自查看页面源代码 div class col s12 m12 l4 xl4 therapist contact list p class col s6 m6 l6 xl6
  • 停止 jquery 循环插件

    我正在使用cycle jquery 插件 我有一些淡入淡出的图像 希望它在循环结束时停止在最后一张图像上 有谁知道一个好方法来做到这一点 谢谢
  • ASCII 到光栅的转换

    我正在使用以下代码打开单波段光栅图像 带有温度值 library raster nrows 764 ncols 1022 df1 lt read table AA092800 1 asc skip 11 header FALSE sep t
  • Flask 静态文件路由中的变量 [url_for('static', filename='')] [重复]

    这个问题在这里已经有答案了 我正在制作一个简单的音乐应用程序 我想允许用户上传他们的音频文件 并且我有一个页面 我计划在其中显示所有歌曲 我创建了一个模板 结构如下 for song in songs div class chart ite
  • 使用自定义日期初始化 NSDate

    我正在寻找类似的东西 NSDate date NSDate alloc initWithYear 1984 month 10 Day 8 有没有办法做这样的事情 Thanks 我为此任务编写了一个类别 NSDate 缺少很多有用的方法 in
  • android 中如何检测用户存在?

    我知道在 Galaxy Samsung SIII 中可以在设置中配置一个选项 以避免用户在查看屏幕时屏幕关闭 我认为手机使用摄像头或某种存在传感器 是否可以通过编程来完成 即使可以 某些设备也无法做到这一点 我在这里想象一些可能性 使用相机
  • 如何自动更新使用 Inno Setup 安装的应用程序

    我有一个适用于 Windows 的可执行应用程序 setup exe 是我使用基于 Java 的 Launch4j Inno Setup 实现的 我经常频繁发布新版本和错误修复 我想知道是否有自动安装更新的机制 Inno Setup 没有任
  • 主机名的有效字符?

    主机名的有效字符是什么 这类似于联网计算机或网络域 具体来说 我正在编写一个连接到远程服务器的 PC 游戏 所以我有一个主机名字段和一个端口字段 显然 端口是短范围内的数字 但我需要知道所有可能的主机名字符是什么 以及可能需要的任何其他模式
  • DocumentDB REST API - 授权令牌错误

    Problem 每当我们请求列表或查询时 我们都会看到从 DocumentDB REST API 返回此错误 但当我们按名称 ID 获取对象时则不会 输入的授权令牌无法满足请求 请检查预期的有效负载是否按照协议构建 并检查正在使用的密钥 背
  • 使用 PLSQL 发送电子邮件

    我想使用 PL SQL 通过 gmail 或 yahoo 主机发送电子邮件 我在 google 中搜索并找到 SMT Mail 包 但它对我不起作用 请问有人可以指导我如何实现这一目标吗 CREATE OR REPLACE PROCEDUR
  • IE 10 和 11 使固定背景在使用鼠标滚轮滚动时跳跃

    当您在 Windows 8 中滚动鼠标滚轮时 固定的背景图像会疯狂地弹跳 这仅影响 IE 10 和 IE 11 这会影响以下元素position fixed以及 这是一个具有固定背景图像的示例 http www catcubed com t
  • Celery 任务优先级

    我想使用 Celery 管理任务 我想要一个任务队列 并发性为1 并且能够将任务推送到具有不同优先级的队列中 这样优先级较高的任务将抢占其他任务 我将三个任务添加到队列中 如下所示 添加任务 py from tasks import exa
  • 可变长度数组类型的 Sizeof 运算符

    根据参考参数 http en cppreference com w c language sizeof 如果类型为表达 is a 变长数组 type 表达被评估并计算其求值的数组的大小 在运行时 这意味着 如果类型表达是一个VLA类型 那么
  • jsp缓存标签库

    我想缓存 JSP 页面的某些部分 因为渲染起来很繁重 整个页面无法缓存 因为它包含用户特定的内容 但大部分页面可以 我认为最好的解决方案是创建一个 JSP 缓存标记 似乎有几种解决方案 但大多数项目都已死亡或被放弃 http www ope
  • 如何使用 FosRestBundle 公开函数结果?

    我正在使用 Symfony2 和 FosRestBundle 为我们的系统开发 REST API FosRestBundle 是一个非常好的工具 但它似乎有一个限制 只有属性 私有 受保护和公共 可以暴露给 API 我想公开一个基于其他两个
  • 在 Python 中将 UTF-8 转换为字符串文字

    我有一个 UTF 8 格式的字符串 但不太确定如何将此字符串转换为其相应的字符文字 例如我有字符串 我的字符串是 Entre xc3 xa9 示例一 这段代码 u Entre xc3 xa9 encode latin 1 decode ut