array — arrays de dados numéricos¶
Este módulo define o tipo array.array: uma sequência eficiente em espaço de valores de um único tipo numérico fixo, indexável como uma lista mas apoiada por um bloco contíguo de memória acessível via o protocolo de buffer.
Códigos de tipo suportados¶
O argumento typecode de caractere único seleciona o tipo de elemento:
Código de tipo |
Tipo C |
Bytes |
Tipo Python |
|---|---|---|---|
|
|
1 |
|
|
|
1 |
|
|
|
2 |
|
|
|
2 |
|
|
|
2 ou 4 |
|
|
|
2 ou 4 |
|
|
|
4 |
|
|
|
4 |
|
|
|
8 |
|
|
|
8 |
|
|
|
4 |
|
|
|
8 |
|
Os códigos 'f' e 'd' requerem firmware compilado com suporte a ponto flutuante (o padrão na maioria das placas). A largura exata de 'i' e 'I' segue a ABI C do host — tipicamente 4 bytes nas portas Cortex-M.
Classes¶
- class array.array(typecode: str, iterable: Iterable = ())¶
Cria um array com elementos do tipo fornecido. O conteúdo inicial do array é dado por iterable. Se não for fornecido, um array vazio é criado.
Além dos métodos abaixo, objetos array também implementam o protocolo de buffer. Isso significa que o conteúdo do array inteiro pode ser acessado como bytes brutos via uma
memoryviewou outras interfaces que usam este protocolo.- extend(iterable: Iterable) None¶
Anexa os novos elementos contidos em iterable ao final do array, fazendo-o crescer.
- __getitem__(index: int | slice) Any¶
Leitura indexada do array, chamada como
a[index](ondeaé umarray). Retorna um valor se index for uminte umarrayse index for uma fatia (slice). Índices negativos contam a partir do final eIndexErroré lançado se o índice estiver fora do intervalo.Nota:
__getitem__não pode ser chamado diretamente (a.__getitem__(index)falha) e não está presente em__dict__, poréma[index]funciona.
- __setitem__(index: int | slice, value: Any) None¶
Escrita indexada no array, chamada como
a[index] = value(ondeaé umarray).valueé um único valor se index for uminte umarrayse index for uma fatia (slice). Índices negativos contam a partir do final eIndexErroré lançado se o índice estiver fora do intervalo.Nota:
__setitem__não pode ser chamado diretamente (a.__setitem__(index, value)falha) e não está presente em__dict__, poréma[index] = valuefunciona.
- __len__() int¶
Retorna o número de itens no array, chamado como
len(a)(ondeaé umarray).Nota:
__len__não pode ser chamado diretamente (a.__len__()falha) e o método não está presente em__dict__, porémlen(a)funciona.
- __add__(other: array) array¶
Retorna um novo
arrayque é a concatenação do array com other, chamado comoa + other(ondeae other são ambosarrays).Nota:
__add__não pode ser chamado diretamente (a.__add__(other)falha) e não está presente em__dict__, poréma + otherfunciona.
- __iadd__(other: array) array¶
Concatena o array com other no local (in-place), chamado como
a += other(ondeae other são ambosarrays). Equivalente aextend(other).Nota:
__iadd__não pode ser chamado diretamente (a.__iadd__(other)falha) e não está presente em__dict__, poréma += otherfunciona.
- __repr__() str¶
Retorna a representação em string do array, chamada como
str(a)ourepr(a)(ondeaé umarray). Retorna a string"array(<type>, [<elements>])", onde<type>é a letra do código de tipo do array e<elements>é uma lista separada por vírgulas dos elementos do array.Nota:
__repr__não pode ser chamado diretamente (a.__repr__()falha) e não está presente em__dict__, porémstr(a)erepr(a)ambos funcionam.