如何将 ASCII 十六进制代码中的路径转换为其等效的 ASCII 字母?

How do I convert a path in ASCII hex code, to its equivalent ASCII letters?

我正在尝试在 Python 中使用以下路径:

/home/user/Music/library/1-02%2520Maralito.mp3

文件名为:"1-02 Maralito.mp3"

因此 space 被转换为代码 %2520,我不知道它代表什么。

我在 Ubuntu 上使用 Rhythmbox API,但无法将值转换回 Python。有什么建议吗?

此字符串已被 URL 编码两次。 %25 代表一个 % 字符。解码 %25 得到的 %20 表示 space.

urllib.parse.unquote(只是 Python 2 中的 urllib.unquote)解码 % 编码,你会想要解码两次:

t = "/home/user/Music/library/1-02%2520Maralito.mp3"
from urllib.parse import unquote   # Python 3
from urllib import unquote         # Python 2
print(unquote(unquote(t)))