Рубрики
Без рубрики

Функция Python Bytes ()

Встроенные байты Python (Source) создают неизменяемый объект байта, инициализированные, как определено в источнике аргумента функций. Объект байта похож на строку, но он использует только байтовые символы, состоящие из последовательности 8-битных целых чисел в диапазоне 0

Автор оригинала: Chris.

Встроенный Python Байты (источник) Функция создает неизменяемое Байты Объект инициализирован, как определено в аргументе функции Источник Отказ Объект байта – это как строка, но она использует только байтовые символы, состоящие из последовательности 8-битных целых чисел в диапазоне 0 <= x <256 Отказ Возвращенный байтовый объект неизменен – вы не можете изменить его после создания. Если вы планируете изменить содержимое, используйте ByTearRay () Метод для создания мультипликации BYTEARRAY объект.

Вот минимальный пример, который создает Байт С трех целых чисел, хранящихся в списке:

>>> bytes([1, 2, 3])
b'\x01\x02\x03'

Префикс \ x Побегная последовательность означает, что следующие два символа интерпретируются как шестнадцатеричные коды символов. Например, шестнадцатеричный код \ x01 такой же, как Chr (0x01) = 16 * 0 + 1 = 1 Это просто начало заголовка SOH персонаж. ( Источник , таблица ASCII )

Syntax: bytes([source[, encoding[, errors]]])
Аргумент Источник (необязательно) Позволяет инициализировать байт четырьмя разными способами (из простых в более сложных): 🐍 Integer -> Array имеет этот размер и инициализируется с 0 байтами: >>> Bytes (4) b ‘\ x00 \ x00 \ x00 \ x00’ 🐍 tireable -> целые числа в диапазоне 0 <256 являются исходным байтовым содержимым: >>> BYTES ([1, 2, 3]) B ‘\ x01 \ x02 \ x03’ 🐍 🐍 string, и вы предоставляете аргументы кодировки (и, необязательно, ошибки) -> bytes () преобразует строку в байт, используя str.encode (): >>> bytes (‘hi’, utf -8 ‘) B’HI’ 🐍 Object Реализация буферного интерфейса -> инициализирует объект байта через буфер объекта только для чтения.
Аргумент кодирование (необязательно) Кодировка, используемая в случае, если вы предоставляете строковый аргумент. Пример: «UTF-8».
Аргумент ошибки (необязательно) Действие, чтобы взять, когда конверсия кодирования не удается. Только имеет смысл, если исходный аргумент является строкой.
Возвращаемое значение байт Возвращает новый объект типа байта-последовательности байтов, которые неизменны. Для мультипной версии рассмотрите возможность использования функции ByTearray (). ⭐ Без дополнительного аргумента он возвращает объект байта одним байтом 0: >>> Bytes () B ”

Вот некоторые основные применения функции:

Input : bytes(4)
Output : b'\x00\x00\x00\x00'

Input : bytes([1, 2, 3])
Output : b'\x01\x02\x03'

Input : bytes('hi', 'UTF-8')
Output : b'hi'

Хотите узнать больше? Мы собираемся погрузиться в большее количество примеров дальше!

Но прежде чем мы будем двигаться дальше, я рад представить вам мою новую книгу Python Python One-listers (Amazon Link).

Если вам нравятся одноклассники, вы будете любить книгу. Это научит вам все, что нужно знать о Одно строка кода Python. Но это тоже Введение в компьютерную науку , наука о данных, машин обучения и алгоритмы. Вселенная в одной строке Python!

Книга была выпущена в 2020 году с помощью книги по программированию мирового класса Nostarch Press (San Francisco).

Ссылка: https://nostarch.com/pythononeliners.

Создание объекта BYTES из единого целочисленного аргумента – примеры

Следующий код показывает, как использовать Байты () Функция на простые целочисленные аргументы.

# Single Integer Input Argument
print(bytes())
print(bytes(2))
print(bytes(4))

'''
b''
b'\x00\x00'
b'\x00\x00\x00\x00'
'''

Если вы предоставляете только один входной аргумент, он использует этот входной аргумент, чтобы определить, сколько байтов должно быть создано. Он просто использует байты со значением 0, в байтовом обозначении x00 заполнить Байт Отказ

Создание объекта байтов из намеченных целых чисел – примеры

Вы также можете предоставить доводящий аргумент для получения нового байтового объекта:

# Iterable Input Argument
print(bytes([1, 1, 1]))
print(bytes([14]))
print(bytes({9, 8, 7}))

'''
b'\x01\x01\x01'
b'\x0e'
b'\x08\t\x07'
'''

Итализатор должен состоять из ряда целых чисел от 0 до 256. Если вы не сделаете это, Python бросит ValueError:

Как исправить “ValueError: BYTE должен находиться в пределах диапазона (0, 256)»

Если вы используете Байты () Функция на съемке, которая содержит по меньшей мере одно целое число больше, чем максимальное число, представленное на 8 битах, а именно 256 или меньше 0, Python бросит ValueError: Байт должен находиться в пределах диапазона (0, 256) . Вы можете исправить его, убедившись, что каждое число в вашем итерателе можно представить на 8 битах и попасть в интервал от 0 до 256.

Вот пример ValueError, где вы используете номер больше или равен, чем 256:

>>> bytes([999])
Traceback (most recent call last):
  File "", line 1, in 
    bytes([999])
ValueError: bytes must be in range(0, 256)

Еще один пример при использовании числа меньшее, чем 0:

>>> bytes([-10])
Traceback (most recent call last):
  File "", line 1, in 
    bytes([-10])
ValueError: bytes must be in range(0, 256)

Исправьте его, изменяя числа, чтобы лежать в интервале от 0 до 256:

>>> bytes([255])
b'\xff'

Резюме

Встроенная функция Python Байты () Позволяет инициализировать Байт Четыре разных способами (от простого до сложного):

🐍 Целое число – > Массив имеет этот размер и инициализируется с 0 байтами:

>>> bytes(4)
b'\x00\x00\x00\x00'

🐍 ИТЕРИТЕЛЬНО -> целые числа в диапазоне 0 <256 являются исходным байтовым содержимым:

>>> bytes([1, 2, 3])
b'\x01\x02\x03'

🐍 строка и вы предоставляете кодирование (и необязательно, ошибки ) аргументы -> Байты () Преобразует строку в байты, используя str.encode () :

>>> bytes('hi', 'UTF-8')
b'hi'

🐍 объект Реализация Интерфейс буфера -> Инициализирует объект байта с помощью объекта только для чтения.

Хотите увеличить свои навыки Python в веселой и легкой потребности? Рассмотрим следующие ресурсы и стать магистральным кодером!

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

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

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.

Присоединяйтесь к свободному вебинару сейчас!

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.

Оригинал: “https://blog.finxter.com/python-bytes-function/”