在python中有什么方法可以改变这个 - > %CE%B1%CE%BB%20到此:“αλ”是它的真实表示吗?
提前致谢!
答案 0 :(得分:50)
对于python 2:
>>> import urllib2
>>> print urllib2.unquote("%CE%B1%CE%BB%20")
αλ
对于python 3:
>>> from urllib.parse import unquote
>>> print(unquote("%CE%B1%CE%BB%20"))
αλ
这里的代码适用于所有版本:
try:
from urllib import unquote
except ImportError:
from urllib.parse import unquote
print(unquote("%CE%B1%CE%BB%20"))
答案 1 :(得分:10)
这里有两种编码方式。您的字符串首先被编码为UTF-8,然后每个字节都是percent-encoded。
要获取原始字符串,您需要首先取消引用它,然后解码它:
>>> import urllib
>>> s = '%CE%B1%CE%BB%20'
>>> result = urllib.unquote(s).decode('utf8')
>>> print result
αλ
请注意,您需要启用Unicode的控制台才能显示该值(如果print语句出错,请尝试在IDLE中运行它。)
答案 2 :(得分:1)