Como encerrar algoritmo ao digitar 'O' com laço FOR

51 views
Skip to first unread message

Estefano Dembeyski

unread,
Sep 3, 2021, 10:43:00 AM9/3/21
to Python Brasil
Pessoal, não sei se conseguem me auxiliar.
Estou iniciando os estudos, e estou em uma encruzilhada.
Como diabos, encerro meu algoritmo se o usuário digitar 0??
Coloquei ele como laço FOR.
Minha lista deveria aparecer da forma que esta realmente (só está duplicada, e não sei pq esta assim)
Se puderem me ajudar com uma explicação...
Segue algoritmo:

from operator import itemgetter

produto = {}
produtos = []


for i in range (3):
produto['Código'] = (input('Qual o código?: '))
produto['Estoque'] =(input('Qual o estoque?: '))
produto['Mínimo'] = (input ('Qual o mínimo?: '))
produtos.append(produto.copy())

print('-' * 20)
for e in produtos:
lista = sorted(produtos, key=itemgetter('Código'))
print(lista, end=' ')

Marcelo Valle

unread,
Sep 3, 2021, 12:03:16 PM9/3/21
to Python Brasil
Você quer que seu programa saia quando o usuário digitar `0` ou no estoque, ou no código, ou no produto, eh isso?
Atualmente, seu for itera 3 vezes, de forma fixa. Se voce quiser que ele itere nao um numero fixo de vezes, mas enquanto uma condicao for verdadeira, o loop `while` eh mais indicado pra isso. 
Nao entendi o que voce quis dizer sobre a lista estar duplicada, mas a linha `lista = sorted(produtos, key=itemgetter('Código'))` poderia estar fora de qualquer for loop, se o seu print estiver dentro desse segundo for loop, voce estarah executando esse comando 3 vezes, dando a impressao de duplicar os itens.

[]s

--
--
------------------------------------
Grupo Python-Brasil
https://wiki.python.org.br/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com
---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/python-brasil/99e3e2cf-cff6-466c-b239-b614e9511ae7n%40googlegroups.com.

Antonio Ennio de Jesus

unread,
Sep 4, 2021, 8:27:26 AM9/4/21
to Marcelo Valle, Python Brasil
Use break na condição de saida


Em sex, 3 3e set 3e 2021 às 14:04, Marcelo Valle
<mval...@gmail.com> escreveu:
Reply all
Reply to author
Forward
0 new messages