Преобразование Bytearray в String в Python
-
Преобразуйте
bytearray
в строку с помощью функцииbytes()
в Python -
Преобразуйте
bytearray
в строку с помощью функцииbytearray.decode()
в Python

Вы можете использовать два основных метода для преобразования массива байтов
в строку в Python: bytes()
и bytearray.decode()
. В этом руководстве мы покажем вам, как вы можете использовать эти функции в качестве методов для этого специального преобразования.
Преобразуйте bytearray
в строку с помощью функции bytes()
в Python
Если у нас есть bytearray
, содержащий строковые символы в кодировке utf-8
, и мы хотим преобразовать этот массив в строковую
переменную, мы можем использовать встроенную функцию bytes()
в Python.
Функция bytes()
возвращает неизменяемый байтовый объект, который затем может быть сохранен внутри строковой
переменной. Следующий фрагмент кода демонстрирует, как мы можем преобразовать массив байтов
в строку с помощью функции bytes()
.
b = bytearray("test", encoding="utf-8")
str1 = bytes(b)
print(str1)
Выход:
b'test'
Мы преобразовали объект массива байтов b
в строковую переменную str1
с помощью функции bytes()
в приведенном выше коде. Сначала мы закодировали текст test
в кодировке utf-8
внутри объекта bytearray
. Затем мы преобразовали массив байтов
в строку с помощью функции bytes()
и сохранили результат в строковой переменной str1
.
В итоге мы распечатали данные внутри переменной str1
. Выходные данные показывают, что этот процесс добавляет объект b
в начало наших исходных данных, а затем заключает данные в одинарные кавычки. Эта проблема решается в методе, обсуждаемом далее.
Преобразуйте bytearray
в строку с помощью функции bytearray.decode()
в Python
Как мы видим, функция bytes()
преобразует массив байтов
в строку, но добавляет дополнительные данные к исходной строке. Эту проблему можно решить с помощью манипуляций со строками, но это громоздкий процесс. Функция bytearray.decode()
автоматически делает это за нас. Этот метод декодирует данные, изначально закодированные внутри массива байтов
.
Следующий фрагмент кода демонстрирует, как мы можем преобразовать массив байтов
в строку с помощью функции bytearray.decode()
.
b = bytearray("test", encoding="utf-8")
str1 = b.decode()
print(str1)
Выход:
test
Мы преобразовали объект байтового массива b
в строковую переменную str1
с помощью функции b.decode()
в приведенном выше коде. Сначала мы закодировали текст test
в кодировке utf-8
внутри объекта bytearray
. Затем мы преобразовали массив байтов
в строку с помощью функции b.decode()
и сохранили результат внутри строковой переменной str1
. В итоге мы распечатали данные внутри переменной str1
. Выходные данные показывают, что этот процесс не добавляет никаких дополнительных данных к нашим изначально закодированным данным.
Из демонстрации выше ясно, что метод bytearray.decode()
намного превосходит метод byte()
для преобразования объекта bytearray
в строковую
переменную.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedInСопутствующая статья - Python String
- Как проверить, что строка пуста в Python
- Как удалить белый пробел в строке на Python
- Как конвертировать строку в дату на Python
- Как преобразовать строку в нижний кейс на Python 2 и 3
- Как проверить, содержит ли струна подвеску на Python
- Как преобразовать список в струну на Python