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

Python bytearray () Функция

HTTPS://youtu.be/wznmws9x6n4 встроенный метод Python () принимает, такой как список целых чисел от 0 до 256, преобразует их в байты между 00000000 и 11111111 и возвращает новый массив байтов в качестве ByteAray учебный класс. Вот минимальный пример, который создает ByTearRay из трех целых чисел, хранящихся в списке: >>> ByTearRay ([1, 2, … Python Bytearray () Функция Подробнее »

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

Встроенный Python ByTearRay () Метод принимает, например, как Список целых чисел от 0 до 256, преобразует их в байты между 00000000 и 11111111 и возвращает новый массив байтов как BYTEARRAY учебный класс.

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

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

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

Syntax: bytearray([source[, encoding[, errors]]])
Аргумент Источник (необязательно) Позволяет инициализировать BYTEARRAY четырех разных способов (от простого в сложном комплексе): 🐍 Integer -> Массив имеет этот размер и инициализируется с 0 байтами: >>> ByTeArRay (4) ByTearRay (B ‘\ x00 \ x00 \ x00 \ x00 ‘) 🐍 Tireable -> Целые числа в диапазоне 0 <256 являются первоначальным содержимым ByTearRay: >>> ByTearRay ([1, 2, 3]) ByTearRay (B’ \ x01 \ x02 \ x03 ‘) 🐍 строка, и вы предоставляете Кодировка (и, необязательно, ошибки) аргументы -> ByTeArRay () преобразует строку в байт с помощью Str.encode (). 🐍 Объект, реализующий интерфейс буфера -> инициализирует массив байта через буфер объекта только для чтения.
Аргумент кодирование (необязательно) Кодировка, используемая в случае, если вы предоставляете строковый аргумент. Пример: «UTF-8».
Аргумент ошибки (необязательно) Действие, чтобы взять, когда конверсия кодирования не удается. Только имеет смысл, если исходный аргумент является строкой.
Возвращаемое значение ByTearRay Возвращает новый объект типа BYTEARRAY – последовательность байтов. ⭐ Без дополнительного аргумента он возвращает BYTEARRAY с одним байтом 0: ByTeArRay () -> ByTeArRay (B ”)

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

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

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

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

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

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

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

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

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

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

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

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

'''
bytearray(b'')
bytearray(b'\x00\x00')
bytearray(b'\x00\x00\x00\x00')
'''

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

Создание ByTearRay из намеченных целых чисел – примеры

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

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

'''
bytearray(b'\x01\x01\x01')
bytearray(b'\x0e')
bytearray(b'\x08\t\x07')
'''

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

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

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

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

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

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

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

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

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

Резюме

Встроенный Python ByTearRay () Функция позволяет создавать новый Байтовый массив и инициализируйте его четырьмя разными способами (от простого в комплекс):

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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