Arrays en Python: Creación, Manipulación y Operaciones Avanzadas – Guía Experta
¿Qué es un Array en Python?
Un array en Python es una colección homogénea de elementos almacenados en memoria contigua, ofreciendo almacenamiento eficiente y operaciones numéricas más rápidas comparado con listas. El módulo integrado array maneja la creación y manipulación de arrays.
Cuándo Usar Arrays en Python
Los arrays de Python son ideales cuando necesita almacenar muchos valores del mismo tipo y realizar computaciones numéricas. Consumen menos memoria y proporcionan acceso más rápido que las listas, especialmente para grandes conjuntos de datos.
Sintaxis para Crear un Array
Importe el módulo array y llame a array.array(typecode, initializer):
import array
mi_array = array.array('i', [1, 2, 3])
Códigos de Tipo de Array
| Código de tipo | Tipo Python | Tipo C | Tamaño mínimo (bytes) |
|---|---|---|---|
| 'u' | Carácter Unicode | Py_UNICODE | 2 |
| 'b' | Int | Signed char | 1 |
| 'B' | Int | Unsigned char | 1 |
| 'h' | Int | Signed short | 2 |
| 'l' | Int | Signed long | 4 |
| 'L' | Int | Unsigned long | 4 |
| 'q' | Int | Signed long long | 8 |
| 'Q' | Int | Unsigned long long | 8 |
| 'H' | Int | Unsigned short | 2 |
| 'f' | Float | Float | 4 |
| 'd' | Float | Double | 8 |
| 'i' | Int | Signed int | 2 |
| 'I' | Int | Unsigned int | 2 |
Acceso a Elementos
Los elementos se acceden por índice base cero:
import array
balance = array.array('i', [300, 200, 100])
print(balance[1]) # 200
También puede usar índices negativos o slicing:
import array
arr = array.array('q', [3, 9, 6, 5, 20, 13, 19, 22, 30, 25])
print(arr[1:4]) # array('q', [9, 6, 5])
print(arr[7:10]) # array('q', [22, 30, 25])
Insertar Elementos
Inserte un valor en una posición específica con insert(index, value):
import array
balance = array.array('i', [300, 200, 100])
balance.insert(2, 150)
print(balance) # array('i', [300, 200, 150, 100])
Modificar Elementos
Los arrays son mutables; asigne un nuevo valor directamente:
import array
arr = array.array('b', [3, 6, 4, 8, 10])
arr[0] = 99
print(arr) # array('b', [99, 6, 4, 8, 10])
La concatenación también está soportada:
import array
first = array.array('b', [4, 6, 8])
second = array.array('b', [9, 12, 15])
combinado = first + second
print(combinado) # array('b', [4, 6, 8, 9, 12, 15])
Eliminar Elementos
Pop remueve un item por índice:
import array
arr = array.array('b', [20, 25, 30])
arr.pop(2)
print(arr) # array('b', [20, 25])
Del elimina un elemento por posición:
import array
arr = array.array('b', [10, 4, 5, 5, 7])
del arr[4]
print(arr) # array('b', [10, 4, 5, 5])
Remove elimina la primera ocurrencia de un valor:
import array
arr = array.array('b', [2, 3, 4])
arr.remove(3)
print(arr) # array('b', [2, 4])
Búsqueda e Índice
Encuentre el índice de un valor con index(value):
import array
arr = array.array('b', [2, 3, 4, 5, 6])
print(arr.index(3)) # 1
Invertir un Array
Invierta en lugar:
import array
arr = array.array('b', [1, 2, 3])
arr.reverse()
print(arr) # array('b', [3, 2, 1])
Convertir a Unicode
Solo arrays de tipo 'u' soportan tounicode():
from array import array
p = array('u', [u'\u0050', u'\u0059', u'\u0054', u'\u0048', u'\u004F', u'\u004E'])
print(p) # array('u', 'PYTHON')
print(p.tounicode()) # PYTHON
Contar Elementos
Cuente ocurrencias con count(x):
import array
arr = array.array('b', [2, 3, 5, 4, 3, 3, 3])
print(arr.count(3)) # 4
Recorrer un Array
Itere con un bucle for:
import array
arr = array.array('i', [300, 200, 100])
for x in arr:
print(x)
Resumen
- Un array de Python contiene elementos de un solo tipo, definido por un código de tipo.
- Los arrays se crean vía el módulo
arrayy son más eficientes en memoria que las listas. - Use indexación, slicing y métodos integrados (
insert,remove,pop,reverse) para manipular datos. - Los arrays soportan concatenación, conteo y búsqueda.
- Solo arrays
'u'pueden convertirse a cadenas Unicode.
python
- Arrays en C++: Declaración, inicialización y técnicas con punteros
- Asignación dinámica de arrays en C++: Guía práctica con ejemplos de código
- Dominando Colecciones en C#: Tutorial Práctico con Ejemplos del Mundo Real
- Domine str.count() en Python: Cómo Contar Caracteres y Subcadenas con Ejemplos
- Domine el Formateo de Strings en Python con format(): Ejemplos Claros
- Domine el Método String.find() en Python: Sintaxis, Ejemplos y Alternativas
- Dominando las funciones lambda en Python: ejemplos prácticos y mejores prácticas
- Función round() en Python explicada con ejemplos prácticos
- Dominando la función map() de Python: sintaxis, ejemplos y mejores prácticas
- Python timeit(): medición de tiempo de ejecución con ejemplos prácticos
- Entendiendo type() e isinstance() en Python: ejemplos prácticos