Поиск по сайту:

Как часто мы играем комедию, не надеясь на аплодисменты (Ежи Лец).

Преобразование строки в байты в Python

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
16 ноября 2021
Преобразование строки в байты в Python
Байт-объект состоит из серии байтов. Они машиночитаемы и могут быть немедленно сохранены на диск. Строки находятся в удобочитаемом формате и перед использованием должны быть закодированы. Текст можно сопоставить с диском, используя множество различных типов кодирования. Наиболее широко используются системы кодирования ASCII и UTF-8.

В Python байты и строки хорошо различаются. Предоставляя кодировку, вы можете кодировать строку для получения байтов и декодировать байты для получения строки. Интер-преобразования являются обычным явлением, но преобразования строк в байты становятся все более распространенными в наши дни, поскольку нам обычно требуется переводить строки в байты при работе с файлами или машинном обучении. Вы должны знать, что преобразование может завершиться неудачно, и следует учитывать то, как обрабатываются ошибки.

Давайте посмотрим на несколько иллюстраций, как это можно сделать. В этом руководстве мы узнаем о преобразовании строки Python в байты. Мы рассмотрим два метода, чтобы вы могли выбрать тот, который лучше всего соответствует вашим желаниям. Хотя существует несколько методов преобразования строк Python в байты, мы сосредоточимся на наиболее распространенных и простых. Теперь рассмотрим несколько примеров.

Пример 1:

Чтобы преобразовать строку в байты, мы можем использовать встроенный в Python класс Bytes: просто укажите строку в качестве первого аргумента функции Object() { [native code] } класса Bytes, а затем укажите кодировку. Изначально у нас есть строка с названием «my_str». Мы преобразовали эту конкретную строку в байты.

my_str = "welcome to Python"
str_one = bytes(my_str, 'utf-8')
str_two = bytes(my_str, 'ascii')
print(str_one,'\n')
for byte in str_one:
print(byte, end='')
print('\n')
for byte in str_two:
print(byte,end='')

 

Этот подход, как видите, преобразовал строку в серию байтов. Обратите внимание, что эта функция преобразует объекты в неизменяемые байты; если вам нужен изменяемый метод, используйте вместо него метод bytearray(). Элемент был создан в текстовом формате, который легко читается, но данные, которые он содержит, указаны в байтах. Вот результат реализации приведенного выше кода.

Преобразование строки в байты в Python

 

Пример 2:

В этом примере для перевода данных использовался метод encode(). Это наиболее часто используемый и рекомендуемый способ преобразования строк Python в байты. Одна из основных причин — его легче читать. Синтаксис метода кодирования следующий:

# string.encode(encoding=encoding, errors=errors)

 

Читать  3 простых шага, чтобы найти лучшего разработчика программного обеспечения для вашего бизнеса

Строка, которую вы хотите преобразовать, называется строкой. Используемый вами метод кодирования называется «кодирование». Строка «Error» показывает сообщение об ошибке. UTF-8 стал стандартом со времен Python 3.

my_str = "sample code for conversion"
my_str_encoded = my_str.encode(encoding = 'UTF-8')
print(my_str_encoded)
for bytes in my_str_encoded:
print(bytes,end ='')

 

В качестве примера мы использовали строку my_str = “Sample code for conversion”. Мы использовали кодировку для преобразования после инициализации строки, а затем распечатали вывод строки. После этого мы распечатали отдельные байты следующим образом:

Преобразование строки в байты в Python

 

Пример 3:

В нашем третьем примере мы снова используем метод encode() для преобразования строк в байты. Это удобный способ конвертировать строки в байты.

my_str = "Learn about programing"
print(my_str)
print(type(my_str))
str_object = my_str.encode("utf-8")
print(str_object)
print(type(str_object))

 

Мы рассматриваем my_str=«Learn about programming» как источник, который нужно преобразовать в байты в приведенном выше коде. На следующем шаге мы превратили строку в байты с помощью метода encode(). До и после преобразования функция type() используется для проверки типа объекта. Здесь используется enc = utf-8.

Приведенный выше код сгенерировал следующий вывод.

Преобразование строки в байты в Python

 

Заключение

Оба этих подхода эффективно решают одну и ту же проблему; поэтому выбор одного метода вместо другого зависит от личных предпочтений. Однако мы рекомендуем вам выбрать вариант, который лучше всего соответствует вашим потребностям. Метод byte() возвращает объект, который нельзя изменить. В результате, если вам нужен изменяемый объект, подумайте об использовании bytearray(). Объект должен иметь размер 0 = x 256 для методов byte().

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close