array.array mantém valores de um único tipo C e oferece operações de sequência. Ele pode ser mais compacto que uma lista de inteiros quando o problema é simples e os tipos disponíveis bastam.

Exemplo prático

from array import array

samples = array("h", [120, -20, 350])
samples.append(90)
raw = samples.tobytes()

restored = array("h")
restored.frombytes(raw)
print(restored.tolist())

O type code faz parte do formato

Escolha o código conforme sinal, largura e faixa necessárias. Tamanho e ordem de bytes podem importar ao trocar dados entre arquiteturas; documente o contrato e use byteswap() apenas com entendimento do formato.

Quando escolher outra estrutura

Para cálculo vetorizado e matrizes multidimensionais, NumPy oferece uma API muito mais ampla. Para registros binários com campos diferentes, struct costuma expressar melhor o layout.

Continue estudando

Leia também Collections em Python: Counter, defaultdict, deque e mais e struct em Python: empacote dados binários. A documentação oficial do Python, consultada em 22 de julho de 2026, detalha a API e o comportamento entre versões.