Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Identificar listas dentro de listas

Bom dia,

Tem algum método para identifircar se minha lista possui outra lista dentro?

por exemplo tenho uma lista com 50000 ítens e quero saber se algum desses ítens é um outra lista, assim como vimos no exemplo da lista Carro1

Carro_1 = ['Jetta Variant', 'Motor 4.0 Turbo', 2003, 44410.0, False, ['Rodas de liga', 'Travas elétricas', 'Piloto automático'], 88078.64]

teria algum comando que me mostra que a posição 5 dessa lista é uma outra lista?

Obrigado

2 respostas
solução!

Olá Rafael, tudo bem? Espero que sim!

Você pode localizar listas dentro de outras listas utilizando um loop for ou list comprehension, comparando se cada um dos elementos é do tipo lista.

Dado a variável Carro_1, podemos checar se há uma lista dentro dessa variável percorrendo a variável Carro_1 através de um for:

Carro_1 = ['Jetta Variant', 'Motor 4.0 Turbo', 2003, 44410.0, False, ['Rodas de liga', 'Travas elétricas', 'Piloto automático'], 88078.64]

for item in Carro_1:
    if type(item) == list:
        print("Há uma lista dentro de Carro_1")

Caso queira apresentar a posição dessa lista dentro da variável, pode utilizar o método enumerate, que retorna uma tupla com a posição e o elemento da lista. Dessa forma, podemos retornar todas as posições que são do tipo lista:

Carro_1 = ['Jetta Variant', 'Motor 4.0 Turbo', 2003, 44410.0, False, ['Rodas de liga', 'Travas elétricas', 'Piloto automático'], 88078.64]

for posicao, item in enumerate(Carro_1):
    if type(item) == list:
        print(posicao)

Você também pode utilizar o conceito de list comprehension para retornar todas as posições que são listas:

Carro_1 = ['Jetta Variant', 'Motor 4.0 Turbo', 2003, 44410.0, False, ['Rodas de liga', 'Travas elétricas', 'Piloto automático'], 88078.64]

posicoes = [posicao for posicao, item in enumerate(Carro_1) if type(item) == list]
print(posicoes)

Espero que tenha tirado sua dúvida.

Estou à disposição. Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Obrigado João!!