¿Cómo usar la operación slicing en Python?

| Última modificación: 15 de noviembre de 2024 | Tiempo de Lectura: 4 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

La operación slicing en Python es una operación fundamental que le permite a los programadores acceder y manipular partes específicas de una secuencia, como una lista o una cadena de texto. En este artículo, exploraremos en detalle en qué consiste la operación slicing en Python y cómo se puede utilizar para trabajar con listas. Este conocimiento es esencial para cualquier aspirante a desarrollador web que desee dominar la programación en Python.

¿Qué es la operación slicing en Python?

La operación de slicing en Python es una forma eficiente de extraer elementos de una secuencia, como una lista o una cadena de texto, de acuerdo con una cierta lógica. A través la operación slicing en Python los programadores pueden seleccionar un rango específico de elementos de la secuencia, en lugar de trabajar con elementos individuales uno por uno. Esto hace que el código sea más legible y fácil de mantener.

Si se te hace un poco complejo de entender, intenta imaginarlo del siguiente modo:

Tienes un estante con libros numerados del 0 al 9:

Libros = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

La operación slicing en Python es como decir: “Quiero los libros que están del número 2 al número 6”. En Python, lo escribirías así:

sub_estante = Libros[2:7]
print(sub_estante) # Resultado: [2, 3, 4, 5, 6]

Aquí Python toma los libros desde el índice 2 hasta antes del 7, como si dijeras: “Dame los libros del 2 al 6”.

Si quisieras solo los libros alternados en ese mismo rango, puedes añadir un “paso” de 2, que es como decir: “Dame un libro, salta uno, y toma el siguiente”:

sub_estante_alternado = Libros[2:8:2]
print(sub_estante_alternado) # Resultado: [2, 4, 6]

Esto es útil para “rebanar” cualquier lista de cosas, como en este ejemplo de libros, tomando solo las partes que necesitas.

Sintaxis básica del slicing en Python

La sintaxis básica la operación slicing en Python es la siguiente:

secuencia[inicio:final:paso]

En donde tenemos que:

  • secuencia: la secuencia de la cual se desean extraer elementos, como una lista o una cadena de texto.
  • inicio: el índice del primer elemento que se incluirá en el resultado.
  • final: el índice del primer elemento que se excluirá del resultado.
  • paso: el número de índices que se avanzarán para seleccionar el siguiente elemento.

Ejemplos de la operación slicing en Python

Supongamos que tenemos una lista de números:

numeros = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Para seleccionar una parte específica de esta lista, podemos utilizar la operación slicing en Python. Veamos algunos ejemplos:

Obtener los primeros tres elementos

primeros_tres = numeros[0:3] print(primeros_tres)

Salida:

[0, 1, 2]

En este caso, hemos especificado un inicio de 0 y un final de 3, lo que significa que se incluyen los elementos con índices 0, 1 y 2 en la nueva lista.

Obtener todos los elementos desde el tercer elemento en adelante

desde_el_tercero = numeros[2:] print(desde_el_tercero)

Salida:

[2, 3, 4, 5, 6, 7, 8, 9]

En este caso, hemos omitido el valor de final, lo que significa que Python incluirá todos los elementos desde el índice 2 hasta el final de la lista.

Obtener todos los elementos con un paso de 2

con_paso_dos = numeros[::2] print(con_paso_dos)

Salida:

[0, 2, 4, 6, 8]

En este ejemplo, hemos especificado un paso de 2, lo que significa que Python seleccionará cada segundo elemento de la lista.

Aprende: ¿Qué es indexing y slicing en python?

Valores por defecto en la operación slicing

Es importante mencionar que en la operación de slicing en Python, los valores por defecto para inicio, final y paso son los siguientes:

  • Si no se especifica inicio, se asume que es 0.
  • Si no se especifica final, se asume que es la longitud de la secuencia.
  • Si no se especifica paso, se asume que es 1.

Trabajando con valores booleanos en la operación slicing

La operación slicing en Python también se puede utilizar para trabajar con valores booleanos. Por ejemplo, si tienes una lista de valores booleanos y quieres seleccionar solo aquellos que son verdaderos, puedes hacerlo de la siguiente manera:

valores_booleanos = [True, False, True, True, False, True] verdaderos = [valor for valor in valores_booleanos if valor] print(verdaderos)

Salida:

[True, True, True]

En este caso, hemos utilizado una comprensión de lista junto con la operación slicing para obtener una lista de valores booleanos que son verdaderos.

Aplicaciones avanzadas de la operación slicing

La operación de slicing en Python es muy versátil y puede aplicarse en una variedad de situaciones. Algunas de las aplicaciones avanzadas son:

  • Invertir una lista o cadena de texto.
  • Extraer subsecuencias en patrones específicos.
  • Trabajar con listas multidimensionales.

La operación de slicing en Python es una herramienta poderosa que le permite a los programadores acceder y manipular fácilmente partes específicas de una secuencia, como una lista o una cadena de texto. Al comprender cómo funciona la sintaxis del slicing y cómo aplicarla en situaciones diversas, los desarrolladores pueden escribir código más eficiente y legible.

Te enseñamos más en KeepCoding

Si deseas aprender más sobre Python y desarrollar tus habilidades de programación, considera unirte al Desarrollo Web Full Stack Bootcamp de KeepCoding. En este bootcamp, no solo aprenderás Python en profundidad, sino que también adquirirás las habilidades necesarias para convertirte en un desarrollador web de alto nivel. La industria tecnológica está en constante crecimiento y demanda profesionales capacitados, lo que significa oportunidades de empleo emocionantes y salarios competitivos. ¡No te pierdas la oportunidad de cambiar tu vida y unirte a esta emocionante industria!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado