Я никогда не был уверен, что понимаю разницу между декодированием str/unicode и кодированием.
Я знаю, что str().decode()
для тех случаев, когда у вас есть строка байтов, которые, как вы знаете, имеют определенную кодировку символов, учитывая, что имя кодировки возвращает строку юникода.
Я знаю, что unicode().encode()
преобразует символы unicode в строку байтов в соответствии с заданным именем кодировки.
Но я не понимаю, для чего предназначены str().encode()
и unicode().decode()
. Может ли кто-нибудь объяснить, и, возможно, также исправить что-нибудь еще, что я получил неправильно?
EDIT:
Несколько ответов дают информацию о том, что .encode
делает для строки, но никто не знает, что делает .decode
для юникода.