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