English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Ferramentas Online

Tutorial Básico do Python

Funções do Python

Tipos de Dados do Python

Controle de Fluxo do Python

Objetos e Classes do Python

Data e Hora do Python

Conhecimento Avançado do Python

Manual de Referência do Python

Array no Python

Neste artigo, você aprenderá sobre arrays no Python, a diferença entre arrays e listas, e como e quando usá-los com exemplos.

Em programação, um array é um conjunto de elementos do mesmo tipo.

Arrays no Java, C / C ++Eles são populares na maioria das linguagens de programação como JavaScript. Mas, no Python, eles não são comuns. Quando as pessoas falam sobre arrays no Python, elas estão falando sobre listas no Python. Se você não souber o que é uma lista, é absolutamente necessário verificarLista do PythonArtigo.

Listas Python e módulo de array como array

Podemos ver a lista como um array. Mas, não podemos limitar o tipo dos elementos armazenados na lista. Por exemplo:

a = [1, 3.5, "Hello"]

Se usar o módulo array para criar arrays, todos os elementos do array devem ser do mesmo tipo numérico.

import array as arr
a = arr.array('d', [1, 3.5, "Hello"])   // Error

Como criar arrays?

Você pode ter notado no exemplo acima, precisamos importar o módulo array para criar arrays. Por exemplo:

import array as arr
a = arr.array('d', [1.1, 3.5, 4.5])
print(a)

Aqui, criamos um array do tipo float. A letra 'd' é o código do tipo. Isso determina o tipo do array durante o processo de criação.

Códigos de tipos comuns:

CódigoTipos CTipos Pythonmenor byte
'b'signed charint1
'B'unsigned charint1
'u'Py_UNICODEUnicode2
'h'signed shortint2
'H'unsigned shortint2
'i'signed intint2
'I'unsigned intint2
'l'signed longint4
'L'unsigned longint4
'f'floatfloat4
'd'doublefloat8

Nós não discutiremos os diferentes tipos de C neste artigo.ao longo do artigo, usaremos dois tipos de código: 'i' para inteiros e 'd' para números de ponto flutuante.

Atenção: 'u' desde a versão3.3A partir de, não é recomendado usar o código de tipo Unicode. Tente evitar usá-lo.

Como acessar os elementos do array?

Usamos índices para acessar os elementos do array:

import array as arr
a = arr.array('i', [2, 4, 6, 8])
print("Primeiro elemento:", a[0])
print("Segundo elemento:", a[1])
print("Último elemento:", a[-1])

Lembre-se, os índices começam em 0 (em vez de1)começando, semelhante a uma lista.

Como fatiar o array?

Podemos usar o operador de fatiamento para acessar uma série de itens no array:.

import array as arr
numbers_list = [2, 5, 62, 5, 42, 52, 48, 5]
numbers_array = arr.array('i', numbers_list)
print(numbers_array[2:5]) # O3-第5elementos
print(numbers_array[:-5]) # De início até4elementos
print(numbers_array[5:]) # De6elementos até o fim
print(numbers_array[:]) # De início até o fim

Quando executamos o programa, a saída é:

array('i', [62, 5, 42])
array('i', [2, 5, 62])
array('i', [52, 48, 5])
array('i', [2, 5, 62, 5, 42, 52, 48, 5])

Como alterar ou adicionar elementos?

O array é mutável; seus elementos podem ser alterados de maneira semelhante a uma lista.

import array as arr
numbers = arr.array('i', [1, 2, 3, 5, 7, 10])
# Mudar o primeiro elemento
numbers[0] = 0    
print(numbers) # Saída: array('i', [0, 2, 3, 5, 7, 10])
# Mudar o3até o5elementos
numbers[2:5]) = arr.array('i', [4, 6, 8])   
print(numbers) # Saída: array('i', [0, 2, 4, 6, 8, 10])

Podemos usar o método append() para adicionar um item à lista ou usar o método extend() para adicionar vários itens à lista.

import array as arr
numbers = arr.array('i', [1, 2, 3])
numbers.append(4)
print(numbers)     # Saída: array('i', [1, 2, 3, 4])
# extend() adiciona um iterable ao final do array
numbers.extend([5, 6, 7]) 
print(numbers)     # Saída: array('i', [1, 2, 3, 4, 5, 6, 7])

Podemos usar+O operador de concatenação conecta dois arrays.

import array as arr
odd = arr.array('i', [1, 3, 5])
even = arr.array('i', [2, 4, 6])
numbers = arr.array('i')   # Cria um array inteiro vazio
numbers = odd + even
print(numbers)

Como remover/Como deletar elementos?

Podemos usarSentença del do PythonRemover um ou mais itens do array.

import array as arr
number = arr.array('i', [1, 2, 3, 3, 4])
del number[2] # Deleta o terceiro elemento
print(number) # Saída: array('i', [1, 2, 3, 4])
del number # Deleta todo o array
print(number) # Erro: não foi definido array

Podemos usar o método remove() para deletar um item específico, ou usar o método pop() para deletar o item na posição especificada.

import array as arr
numbers = arr.array('i', [10, 11, 12, 12, 13])
numbers.remove(12)
print(numbers) # Saída: array('i', [10, 11, 12, 13])
print(numbers.pop(2)) # Saída: 12
print(numbers) # Saída: array('i', [10, 11, 13])

Quando usar arrays?

Listas são muito mais flexíveis do que arrays. Elas podem armazenar elementos de diferentes tipos de dados, incluindo strings. Além disso, as listas são mais rápidas. Além disso, se você precisar fazer cálculos matemáticos com arrays e matrizes, é melhor usarNumPyMétodos de bibliotecas e afins.

A menos que você realmente precise de arrays (pode ser necessário módulo de array para interface de código C), não os use.