2
我有以下形式编码的字符串:La + Cit%C3%A9 + De + la + West我存储在Python中的SQLite VARCHAR字段中。将url编码的字符串转换为python unicode字符串
这些显然是UTF-8编码的二进制字符串转换为urlencoded字符串。 问题是如何将其转换回一个Unicode字符串。 s ='La + Cit%C3%A9 + De + la + West'
我使用了urllib.unquote_plus(s)python函数,但它不会将%C3%A9转换为unicode字符。我看到这个'LaCitéde la West'而不是预期的'LaCitéDe la West'。
我在Ubuntu上运行我的代码,而不是Windows,编码是UTF-8。
你的例子对我来说工作方式是一样的。这是否是从VARCHAR字段的SQLite数据库中提取字符串的事实? – chmike
类型以您的示例返回str。随着s = u“La + Cit%C3%A9 + De + la + West”,类型(s)返回unicode并打印unquote_plus(s) 返回'LaCitéde la West'。问题因此是s的初始类型。使用print unquote_plus(str(s))解决了我的问题。 ! – chmike
如果你更新你的答案,我会给你答案。 – chmike