Python

Dividir lista em outras de tamanhos iguais Python

29 de dezembro de 2020

Dividir lista em outras de tamanhos iguais Python

Neste artigo você vai aprender a como dividir lista em outras de tamanhos iguais em Python, criando várias listas menores do mesmo tamanho

Dividir lista em outras de tamanhos iguais capa

Conteúdo também disponível em vídeo:

Fala programador(a), beleza? Bora aprender mais sobre listas e divisão de listas em partes iguais com Python!

Para resolver este problema de forma fácil podemos fazer uma função

Que vai receber uma lista e também como outro parâmetro podemos definir quantos elementos cada uma das listas novas originadas vai ter

Para podermos dividir igualmente a lista maior em menores

E então criamos um loop que vai percorrer a lista maior e cria as listas menores

Vamos ver um exemplo prático:

lista = [*range(1, 100, 1)]

print(lista)

def listasMenores(lst, n):
    for i in range(0, len(lst), n):
        yield lst[i:i + n]
    return lst
        
listasDivididas = list(listasMenores(lista, 5))

print(listasDivididas)

Primeiramente criamos uma lista que tem 100 elementos com range, para podermos utilizar na nossa função

E depois aplicamos a função listasMenores a nossa lista principal, que vai originar outras listas menores

Utilizamos o segundo argumento como 5, ou seja, vamos criar listas de 5 elementos apenas

Veja o resultado final:

[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25], [26, 27, 28, 29, 30], [31, 32, 33, 34, 35], [36, 37, 38, 39, 40], [41, 42, 43, 44, 45], [46, 47, 48, 49, 50], [51, 52, 53, 54, 55], [56, 57, 58, 59, 60], [61, 62, 63, 64, 65], [66, 67, 68, 69, 70], [71, 72, 73, 74, 75], [76, 77, 78, 79, 80], [81, 82, 83, 84, 85], [86, 87, 88, 89, 90], [91, 92, 93, 94, 95], [96, 97, 98, 99]]

Veja que agora temos uma lista, com diversas listas menores de elementos iguais, que cada uma contém 5 elementos

Conclusão

Neste artigo aprendemos como dividir lista em outras de tamanhos iguais em Python

Criamos uma função que recebe uma função que recebe uma lista como argumento e também o número de elementos que queremos em cada uma das listas menores

Aplicamos esta função a uma grande lista gerada por range e a mesma foi dividida em outras listas com 5 elementos cada

Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube

Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x