如何在 Python 中将 '%' 替换为 '\x'

2024-03-25

我的目标是将base64编码的“%EB”字符串转换为“\xEB”。然而,一尝试,我发现这很难,并且通过 string.replace 和 re.sub 都无法实现。

我的代码失败如下:

target = '%EB%AF%B8%EB%9F%AC%EC%8A%A4%20%EC%97%A3%EC%A7%80'

target.replace('%','\x')
-> ValueError: invalid \x escape

re.sub('%','\x',target)
-> ValueError: invalid \x escape

UPDATED:

感谢您的评论,我尝试了 '\x' 和 r'\x',但是,似乎这些都不是解决方案。

例如,

target = '%EB%AF%B8%EB%9F%AC%EC%8A%A4%20%EC%97%A3%EC%A7%80'
converted1 = target.replace('%',r'\x')
converted2 = target.replace('%','\\x')
converted1
-> '\\xEB\\xAF\\xB8\\xEB\\x9F\\xAC\\xEC\\x8A\\xA4\\x20\\xEC\\x97\\xA3\\xEC\\xA7\\x80'
converted2
-> '\\xEB\\xAF\\xB8\\xEB\\x9F\\xAC\\xEC\\x8A\\xA4\\x20\\xEC\\x97\\xA3\\xEC\\xA7\\x80'

Results:

print converted1
\xEB\xAF\xB8\xEB\x9F\xAC\xEC\x8A\xA4\x20\xEC\x97\xA3\xEC\xA7\x80
print converted2
\xEB\xAF\xB8\xEB\x9F\xAC\xEC\x8A\xA4\x20\xEC\x97\xA3\xEC\xA7\x80

我想要的是:

print "\xEB\xAF\xB8\xEB\x9F\xAC\xEC\x8A\xA4\x20\xEC\x97\xA3\xEC\xA7\x80"
미러스 엣지

方法replace无法解码 URL 安全字符串。它只是替换字符% to \x。 如果你想解码 URL 安全字符串,你应该使用urllib.unquote.

import urllib
target = '%EB%AF%B8%EB%9F%AC%EC%8A%A4%20%EC%97%A3%EC%A7%80'
print urllib.unquote(target)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Python 中将 '%' 替换为 '\x' 的相关文章

随机推荐

  • 将具有不同列的大数据文件合并为一个大文件

    我有 N 个制表符分隔的文件 每个文件都有一个标题行 说明列的名称 有些列是所有文件共有的 但有些列是唯一的 我想将所有文件合并成一个包含所有相关标头的大文件 Example gt cat file1 dat a b c 5 7 2 3 9
  • 为 matplotlib 文本设置固定位置

    虽然有几个问题与我的问题类似 但几乎所有问题都与文本框 图例和注释有关 使用循环 我想显示 32 个属性的具体信息 左侧的直方图和右侧的统计信息 仅处理一个属性非常简单 我将 x y 设置为文本位置 就是这样 Histogram sns d
  • MKMapView释放内存

    我遵循了几个SO问题中提供的建议 例如this one https stackoverflow com questions 20138419 stop ios 7 mkmapview from leaking memory 为了释放MKMa
  • 使用批处理变量重命名文件

    我有以下代码 set DATE date echo DATE set DAY DATE 0 2 echo DAY rename file09 txt file DAY 09 txt pause 它应该重命名一个文本文件并将该月的日期放入文件
  • 创建电报 auth_key

    我最近开始使用 telegram api 在第一阶段 我提出了接收请求auth key 这是我的 C 代码 auth key id in unencrypted message is ZERO Int64 auth key id 0 thi
  • 巨大的 WPF 视觉效果渲染不精确 - 有解决方案吗?

    在 WPF 中渲染巨大的视觉效果时 视觉效果会扭曲 并且随着坐标的增加扭曲得更加严重 我认为它与渲染管道中使用的浮点数据类型有关 但我不完全确定 无论哪种方式 我都在寻找解决问题的实际解决方案 为了演示我正在讨论的内容 我创建了一个示例应用
  • 强制浏览器每次都重新加载小程序

    我已经使用了我的小程序部署Java js http download oracle com javase 6 docs technotes guides jweb deployment advice html appletTagAttrib
  • 无法使用自定义表模型通过 table.getColumn 方法获取列索引

    我使用 AbstractTableModel 创建了一个自定义 TableModel 我能够填充我的 JTable 但我的 JTable 有一个按钮列 名为 Button1 因此 我使用 CellRenderer 方法向列添加按钮 使用 C
  • 启用/禁用带有复选框的文本区域

    我的任务是使用 JavaScript 在单击复选框时启用 打开 并在单击 关闭 时禁用它 但是 代码仍然无法工作 无论我是否单击该复选框 都不会执行任何操作 div h2 Order Information h2 div class ent
  • 如何检查 Clojure 代码是否正在 REPL 内进行计算?

    我想根据我的代码是从 REPL 运行还是运行已编译的 jar 来以不同的方式格式化我的日志 有什么简单的方法可以做到这一点吗 我在想也许 Leiningen 在运行 REPL 时会在某个地方留下痕迹 defn current stack t
  • 提取字符串 PHP 中两个字符之间的子字符串

    是否有 PHP 函数可以提取字符串中 2 个不同字符之间的短语 就像是substr Example String modid 256 First Second id substr string First Second Thus id将会2
  • PrimeNG 使用延迟加载表设置第一个页面

    我正在使用组件p table使用 Paginator 和 延迟加载 我根据需要制作了一个搜索组件 我试图解决过滤时的问题 并且页面索引位于另一页上 例子 页面索引 2过滤文本 texto 然后 我更新表上的记录和页数 但如果结果具有更多或相
  • Firebase InstanceId 无法解析标识符 swift4

    我最近更新了我的 SWIFT 应用程序 pod 文件 并且由于 firebase 版本现已更新到 5 2 现在在获取设备实例 ID 时出现以下错误 let tokenId InstanceID instanceID token error
  • 如何将一个数组的值放入另一个数组中?

    String input txtInput getText char charArray input toCharArray char flipArray null System out println charArray length f
  • 内连接三个表

    我有三个表 我希望通过它们之间的公共列进行内部连接 假设我的桌子是 TableA TableB TableC 我想加入A B 但随后也B C这一切都源于这个共同的领域 我将其称为共同的 我已经像这样连接了两个表 dbo tableA AS
  • Pandas 与正则表达式“.”不一致点元字符?

    考虑 df Cost Store 1 22 5 Store 1 Store 2 要将这些点转换为 nan 我可以使用 df replace np nan regex True Cost Store 1 22 5 Store 1 NaN St
  • 如何让Eclipse使用JDK8来编译项目?

    我正在尝试新的 jdk8 这里提供什么http jdk8 java net lambda http jdk8 java net lambda 我可以从命令行编译并运行我的项目 我还可以将这个新的 JDK 添加到Installed JREs在
  • 获取 ngComponentOutlet 的引用

    我正在使用 ngComponentOutlet 动态创建一个组件 听上去像 import Component NgModule from angular core import BrowserModule from angular plat
  • 实际上如何使用 C 库?

    我确信这个问题已经被问过很多次了 但我无法弄清楚 耐心听我说 因此 当您下载库时 您会得到一堆 c 和 h 文件 以及许多其他内容 现在假设您想使用这个库编写一个程序 我将所有 h 文件复制到我的项目目录中 它只是无法编译 太好了 然后我将
  • 如何在 Python 中将 '%' 替换为 '\x'

    我的目标是将base64编码的 EB 字符串转换为 xEB 然而 一尝试 我发现这很难 并且通过 string replace 和 re sub 都无法实现 我的代码失败如下 target EB AF B8 EB 9F AC EC 8A A