Dividir una lista por un número en Python

Rana Hasnain Khan 15 febrero 2024
  1. Use un bucle for para dividir una lista por un número en Python
  2. Use un bucle while para dividir una lista por un número en Python
  3. Use la comprensión de listas para dividir una lista por un número en Python
Dividir una lista por un número en Python

Los datos son la parte más importante de cualquier aplicación. Almacenamos datos en diferentes formas, como matrices, listas y objetos, y los usamos en diferentes funciones para almacenar los datos requeridos en nuestra base de datos.

Este artículo explorará las diferentes formas de dividir una lista por un número. Usaremos bucles para iterar a través de listas y dividir cada elemento por un número específico y guardar los resultados en otra lista.

Use un bucle for para dividir una lista por un número en Python

Primero, usaremos un bucle for para realizar esta tarea. Veamos un ejemplo en el que crearemos una lista de números que dividiremos por 5.

Ejemplo:

# python
listToDivide = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

print("List before dividing by 5: ", listToDivide)

newList = []

for items in listToDivide:
    new = items / 5
    newList.append(int(new))

print("List after dividing by 5: ", newList)

Producción:

Dividir lista usando bucle for

Como puede ver en el ejemplo anterior, podemos dividir fácilmente una lista por un número específico utilizando el bucle for. Pero, ¿y si queremos guardar los datos sin que quede resto después de dividirlos por ese número?

Usemos este concepto en el siguiente ejemplo. Haremos 2 listas diferentes para guardar números con y sin resto.

Ejemplo:

# python
listToDivide = [
    3,
    5,
    7,
    10,
    13,
    15,
    17,
    20,
    23,
    25,
    29,
    30,
    33,
    35,
    37,
    40,
    41,
    45,
    47,
    50,
]

print("List before dividing by 5: ", listToDivide)

newIntList = []
newFloatList = []

for items in listToDivide:
    if items % 5 == 0:
        newIntList.append(int(items))
    else:
        newFloatList.append(items)

print("List of numbers divisible by 5: ", newIntList)
print("List of numbers not divisible by 5: ", newFloatList)

Producción:

Divida la lista usando for Loop y guarde en 2 listas

Como puede ver en el ejemplo, incluso podemos usar esta técnica para separar datos en función de qué números son divisibles y no divisibles por un número específico.

Use un bucle while para dividir una lista por un número en Python

Ahora, analicemos otro método que se puede usar para dividir una lista por un número. En este método, usaremos un bucle while. Entonces, usemos este ciclo con el mismo escenario que discutimos en nuestro primer ejemplo.

Ejemplo:

# python
listToDivide = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

print("List before dividing by 5: ", listToDivide)
newList = []
a = 0
while a < len(listToDivide):
    new = listToDivide[a] / 5
    newList.append(int(new))
    a = a + 1
print("List after dividing by 5: ", newList)

Producción:

Dividir lista usando bucle while

Como puede ver, podemos dividir fácilmente una lista por un número específico usando el bucle while. Los resultados son los mismos que en el bucle for.

Ahora, usemos el concepto en nuestro segundo ejemplo e implementémoslo usando el bucle while y guardando los resultados en 2 listas diferentes en función de si el elemento es divisible por un número.

Ahora, veamos cómo podemos usar el bucle while para el mismo propósito.

Ejemplo:

# python
listToDivide = [
    3,
    5,
    7,
    10,
    13,
    15,
    17,
    20,
    23,
    25,
    29,
    30,
    33,
    35,
    37,
    40,
    41,
    45,
    47,
    50,
]

print("List before dividing by 5: ", listToDivide)

newIntList = []
newFloatList = []
a = 0
while a < len(listToDivide):
    if listToDivide[a] % 5 == 0:
        newIntList.append(int(listToDivide[a]))
        a = a + 1
    else:
        newFloatList.append(listToDivide[a])
        a = a + 1

print("List of numbers divisible by 5: ", newIntList)
print("List of numbers not divisible by 5: ", newFloatList)

Producción:

Divida la lista usando while Loop y guarde en 2 listas

Como puede ver, podemos implementar la misma lógica con los bucles for y while y obtener los mismos resultados. Los bucles nos facilitan iterar a través de cada elemento de la lista y realizar cualquier tarea con él como queramos.

Use la comprensión de listas para dividir una lista por un número en Python

Otra forma de dividir una lista por un número es usando la comprensión de listas. Este método es un método de una línea; escribimos el código en una línea para que se ejecute.

Es un método muy complejo para usar en nuestro segundo ejemplo, en el que estaremos separando los elementos en función de si son divisibles por un número específico o no.

Entonces, usemos la comprensión de listas para dividir una lista por un número, como se muestra a continuación.

Ejemplo:

# python
listToDivide = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

print("List before dividing by 5: ", listToDivide)

newList = []


[newList.append(int(i / 5)) for i in listToDivide]

print("List after dividing by 5: ", newList)

Producción:

Dividir lista usando la comprensión de lista

Como puede ver en el ejemplo anterior, también podemos usar la comprensión de listas para dividir una lista por un número.

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

Artículo relacionado - Python List