Python Glossary English

все Python 3до 3.9Удалено из стандартной библиотекифункция

array.array.fromstring()

удалено

Старое имя метода array.frombytes(): дописывает в массив элементы из байтов. Удалено в Python 3.9 — используйте frombytes().

Синтаксис

a.fromstring(data)  # до 3.9

Метод читал байты и дописывал их в массив как машинные значения элементов. Имя досталось от Python 2, где байты звались строкой; в Python 3.2 его заменили на frombytes(), а в 3.9 псевдоним убрали. Как переписать: a.fromstring(data) → a.frombytes(data). Если раньше передавали str, сначала закодируйте его: a.frombytes(text.encode('ascii')). Число байтов должно делиться на a.itemsize.

Примеры

# Python 3.9+
import array
a = array.array('B')
try:
    a.fromstring(b'hi')
except AttributeError as e:
    print(type(e).__name__)  # → AttributeError
# Python 3.9+
import array
a = array.array('B')
a.frombytes(b'hi')
print(a.tolist())  # → [104, 105]
a.frombytes('ok'.encode('ascii'))
print(a.tolist())  # → [104, 105, 111, 107]
import array
a = array.array('B')
a.fromstring(b'hi')
print(a.tolist())  # → [104, 105]

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности