Как перевести строку в другую кодировку python

Мне нужно переводить имена и фамилии в кодировку, подходящую для URL сайта. Когда я забиваю туда, например, "Иван Иванов" в URL он отображается как "%C8%E2%E0%ED+%C8%E2%E0%ED%EE%E2". Как я понял эта кодировка Windows 1251. Мне нужно сделать так же в python, но когда я делаю

`string = 'Иван Иванов'
print(string.encode('Windows 1251'))`

Мне выводится "b'\xc8\xe2\xe0\xed \xc8\xe2\xe0\xed\xee\xe2'" Что и где я сделал не так?


Ответы (1 шт):

Автор решения: timur

Почему сразу Windows 1251? Это кодировка utf-8

https://stackoverflow.com/questions/18163009/utf-8-percentage-encoding-and-python

import urllib

s = u'î'
print urllib.quote(s.encode('utf-8'))

# output: %C3%AE
→ Ссылка