Я пытаюсь понять преобразование данных в байты в Python. Думаю, я неправильно понимаю здесь нечто фундаментальное. Этот вопрос может помочь развеять некоторые из моих неправильных представлений. Помимо прочего, я хочу разбить строку на символы и преобразовать каждый символ в байт. Вот шесть разных попыток, которые я предпринял. Что мне не удается gr asp?
import sys
data = 'String'
a = data.encode('utf-8')
print(a)
for byte in a:
print(sys.getsizeof(byte)) # I expect to get 1; I get 14.
b = bytes(data, 'utf-8')
print(b)
for byte in b:
print(sys.getsizeof(byte)) # I expect to get 1; I get 14.
c = bytearray()
c.extend(map(ord, data))
print(c)
for byte in c:
print(sys.getsizeof(byte)) # I expect to get 1; I get 14.
for char in data:
d = char.encode('utf-8')
print(d)
print(sys.getsizeof(d)) # I expect to get 1; I get 18.
e = data.encode('ascii')
print(e)
for byte in e:
print(sys.getsizeof(byte)) # I expect to get 1; I get 14.
bytearray = (b'ABCD')
for each_byte in bytearray:
print(sys.getsizeof(each_byte)) # I expect to get 1; I get 14.