파이썬에서 urlenconing으로 유니 코드를 인코딩하는 방법 2.7파이썬 2.7에서 urlenconing으로 유니 코드를 인코딩하는 방법은 무엇입니까?
유니 코드를 '€'와 같이 인코딩하려고합니다.
그러나 나는 내가 무엇을해야 konw하지 않습니다는 ...
>>> u='€'
>>> _u=u'€'
>>> u
'\xa2\xe6'
>>> _u
u'\u20ac'
>>> urllib.quote(u)
'%A2%E6'
>>> urllib.quote(_u)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\urllib.py", line 1268, in quote
return ''.join(map(quoter, s))
KeyError: u'\u20ac'
>>> print urllib.unquote(urllib.quote(u))
€
>>>
그냥 유니 코드 '€'를 통해 '%의 A2의 %의 E6'를해야합니다.
어떻게해야합니까?
>>> print urllib.unquote(urllib.quote(u'€'.encode('utf8')))
?
utf-8로 인코딩하면 모든 것이 잘됩니다. http://stackoverflow.com/questions/5557849/is-there-a-unicode-ready-substitute-i-can-use-for-urllib-quote-and-urllib-unquot – fanlix
감사합니다 @fanlix, 그리고 읽었습니다. 귀하의 링크. 그러나 나는 아직도 모른다. 이 링크는 encode()를 사용한다고 말합니다. 그래서 나는 그것을 시도했다. 상기 참조하십시오. – chobo