Vamos assumir uma iteração na qual chamamos uma função sem um valor de retorno. A maneira como acho que meu programa deve se comportar é explicada neste pseudocódigo:
for element in some_list:
foo(element)
def foo(element):
do something
if check is true:
do more (because check was succesful)
else:
return None
do much much more...
Se eu implementar isso em python, me incomoda que a função retorne a None
. Existe uma maneira melhor de "sair de uma função, que não tem valor de retorno, se uma verificação falhar no corpo da função"?
raise
uma exceção (ou, muito raramente, fazer a função de retorno Verdadeiro / Falso)Respostas:
Você poderia simplesmente usar
que faz exatamente o mesmo que
Sua função também retornará
None
se a execução atingir o final do corpo da função sem pressionar umareturn
instrução. Retornar nada é o mesmo que retornarNone
em Python.fonte
return
não funciona, se eu definira = method()
, dentro do método que eu usoreturn
, ele ainda continua executando o código atrás de. exit deve ser como php exit (), que interrompe o programa instantaneamente.import sys
primeiro e depoissys.exit()
se quiser sair, mas relate sucesso ousys.exit("some error message to print to stderr")
.Eu sugeriria:
fonte
você pode usar a
return
instrução sem nenhum parâmetro para sair de uma funçãoou crie uma exceção se você quiser ser informado sobre o problema
fonte