Sobes.tech
Junior

¿Qué secuencias existen en Python?

sobes.tech AI

Respuesta de la IA

En Python, existen los siguientes tipos integrados de secuencias:

  1. Secuencias inmutables:

    • Cadenas (str): Secuencias de caracteres.
    • Tuplas (tuple): Colecciones ordenadas de elementos que no pueden ser modificadas después de su creación.
    • Secuencias de bytes (bytes): Secuencias de bytes (análogo inmutable de bytearray).
  2. Secuencias mutables:

    • Listas (list): Colecciones ordenadas de elementos que pueden ser modificadas.
    • Arrays de bytes (bytearray): Secuencias de bytes modificables.

Las operaciones principales, comunes a todos los tipos de secuencias, incluyen:

  • Acceso por índice: secuencia[indice]
  • Rebanadas: secuencia[inicio:fin:paso]
  • Longitud: len(secuencia)
  • Verificación de pertenencia: elemento in secuencia
  • Concatenación: secuencia1 + secuencia2 (para mutables crea un nuevo objeto)
  • Repetición: secuencia * número (para mutables crea un nuevo objeto)

Operaciones específicas para secuencias mutables:

  • Modificación de un elemento por índice: secuencia[indice] = nuevo_valor
  • Modificación de rebanadas: secuencia[inicio:fin] = nueva_secuencia
  • Añadir elementos: secuencia.append(elemento), secuencia.extend(secuencia)
  • Insertar elementos: secuencia.insert(indice, elemento)
  • Eliminar elementos: del secuencia[indice], secuencia.remove(elemento), secuencia.pop(indice)

Ejemplos de uso:

# Cadena (inmutable)
mi_cadena = "Hola"
# Tupla (inmutable)
mi_tupla = (1, 2, 3)
# Lista (mutable)
mi_lista = [4, 5, 6]
# Bytes (inmutable)
mis_bytes = b'mundo'
# Array de bytes (mutable)
mi_bytearray = bytearray(b'python')

# Acceso por índice
print(mi_cadena[0])  # Salida: H
print(mi_tupla[1])    # Salida: 2
print(mi_lista[2])    # Salida: 6

# Rebanadas
print(mi_cadena[1:4]) # Salida: ola
print(mi_lista[:2])    # Salida: [4, 5]

# Modificación de lista (los tipos inmutables no soportan esta operación)
mi_lista[0] = 10
print(mi_lista) # Salida: [10, 5, 6]

# Concatenación
nueva_lista = mi_lista + [7, 8]
print(nueva_lista) # Salida: [10, 5, 6, 7, 8]

# Añadir a la lista
mi_lista.append(9)
print(mi_lista) # Salida: [10, 5, 6, 9]