UnicodeEncodeError в python3.4.2?
Привет у меня есть следующий код в Python3.4.2:
s='416f1c7918f83a4f1922d86df5e78348'; w="0123456789abcdef"; x=''.join([chr(w.index(s[i])*16+w.index(s[i+1])) if(i%2==0) else '' for i in range(len(s))]); print(x);
и это показывает эту ошибкуUnicodeEncodeError:
'ascii' codec can't encode character '\xf8' in position 5: ordinal not in range
(128)
Почему это происходит? разве chr в python3 не должен занимать более 128?
1 ответ
Решение
Слишком много работы.
>>> binascii.unhexlify(s)
b'Ao\x1cy\x18\xf8:O\x19"\xd8m\xf5\xe7\x83H'