1
resposta

Como excluir uma lista dentro de lista?

Estou criando um menu de cadastro de produtos em python, nele tem uma lista dentro de outra lista para assim separar as categorias dos produtos sendo:

produtos = []
produtos_dados = [produto_nome,quantidade,valor_custo, valor_venda]

Preciso criar um def excluir produto, porém não estou conseguindo um meio para excluir a linha inteira, vou mostrar o que eu consegui fazer:

def excluir_produto():
  comp_produto = input('Qual produto deseja excluir?')
  for i in range(len(produtos)):
    if comp_produto == produtos[i][0]:
      del produtos[i]
    else:
      print('Produto não encontrado')

Alguem poderia me dar uma sugestão?

1 resposta

Olá, José!

Seu código possui alguns erros, vamos lá:

1 - Você disse que seu programa possui uma lista dentro de outra lista, porém, pelo menos no código que você compartilhou isso não está ocorrendo. Para isso, você deve fazer uso do método append assim: produtos.append(produtos_dados) nesse caso, está adicionando sua lista produtos_dados dentro da sua lista produto, pra fazer isso repetidamente, deverá fazer uso de um laço de repetição.

2 - Sua função não está recebendo nenhum parâmetro para que vc consiga trabalhar. Nesse caso, você deveria passar para sua função um parâmetro, que no caso seria a sua lista produtos. Creio que a única alteração seria esta, a lógica aparenta estar correta.