Как преобразовать строку Python в байты

Процесс преобразования строки Python в байты называется кодировкой , а преобразование байтов в строку называется декодированием. Объект byte в Python — это последовательность байтов, и эти байтовые объекты машиночитаемы и могут быть мгновенно сохранены на диске. Строки , с другой стороны, представляют собой удобочитаемые формы, и их необходимо закодировать для хранения на диске.

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

Чтобы преобразовать строку Python в байты, используйте метод encode () или встроенный байты класс. Метод string.encode (encoding) более питоновский, чем использование конструктора bytes () , потому что он наиболее самодокументированный и предлагающий способ сказать, что «возьмите эту строку и закодируйте ее с помощью этого стандарта кодирования », который более ясен, чем байты ( строка , кодировка ).

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

Фрагмент кода

 string.encode ("UTF-8") # ORbytes (string, "  UTF-8 ") 

Аргументом метода string.encode () является стандартная кодировка.

Функция bytes () принимает два аргумента, в которых первым аргументом является строка, которую мы передадим для преобразования в байты.

второй аргумент — это стандарт кодировки, который может быть UTF-8 или ASCII .

Преобразование строки в байты с помощью Python string encode ()

См. следующий код.

 string = "Cyberpunk 2077" # Строка с кодировкой "UTF-8" p_bytes = string.encode ("UTF-8") # Строка с кодировкой "ASCII" p_bytes2 = string.encode ("ASCII") print (p_bytes  , ' n'  ) print (p_bytes2, " n") # Фактические байты в строке для байта в p_bytes: print (byte, end = '') print (" n") для байта в p_bytes2: print (byte, end = ''  ) 

Вывод

 b'Cyberpunk 2077'b'Cyberpunk 2077'67 121 98 101 114 112 117 110 107 32 50  48 55 5567 121 98 101 114 112 117 110 107 32 50 48 55 55 

На первом этапе мы определили строку, а затем использовали функцию string encode () для кодирования строки в байты, используя два стандарта: 1) UTF-8 и 2) ASCII . Затем мы распечатали оба байта, а затем использовали цикл for-in для печати байтов один за другим.

В Python3 самый лучший способ кодирования строки — использовать функцию encode () с аргумент по умолчанию: «UTF-8» .

Из вывода вы можете видеть, что первые два вывода представляют собой b-строки, что означает, что теперь они являются байтами. Строка Python b состоит из байтовых данных, что означает, что литерал, представляющий целые числа, находится в диапазоне от 0 до

Преобразование строки в байты с помощью конструктора байтов Python

См. следующий код.

 string = "Cyberpunk 2077" # Строка с кодировкой "UTF  -8 "p_bytes = bytes (string," UTF-8 ") # Строка с кодировкой" ASCII "p_bytes2 = bytes (string," ASCII ") print (p_bytes, ' n') print (p_bytes2,"  n ")  # Фактические байты в строке для байта в p_bytes: print (byte, end = '') print (" n") для байта в p_bytes2: print (byte, end = '') 

 b'Cyberpunk 2077'b'Cyberpunk 2077'67 121 98 101 114 112 117 110 107 32 50 48 55 5567 121 98 101 114 112 117 110  107 32 50 48 55 55 

На первом этапе мы определили строку, а затем использовали конструктор байтов для кодирования строки в байты с использованием двух стандартов: 1) UTF-8 и 2) ASCII . Затем мы распечатали оба байта, а затем использовали цикл for-in для печати байтов один за другим.

Это все для этого руководства. Спасибо, что взяли его.

См. Также

Исходная строка Python

Многострочная строка Python

Оцените статью
nanomode.ru
Добавить комментарий