Evitando uso de condicionais + Guard Clause

This commit is contained in:
Luiz Otávio
2022-11-11 09:27:16 -03:00
parent ec388f6e29
commit cf9428e3d8

View File

@@ -33,6 +33,7 @@ def desfazer(tarefas, tarefas_refazer):
print(f'{tarefa=} removida da lista de tarefas.') print(f'{tarefa=} removida da lista de tarefas.')
tarefas_refazer.append(tarefa) tarefas_refazer.append(tarefa)
print() print()
listar(tarefas)
def refazer(tarefas, tarefas_refazer): def refazer(tarefas, tarefas_refazer):
@@ -45,6 +46,7 @@ def refazer(tarefas, tarefas_refazer):
print(f'{tarefa=} adicionada na lista de tarefas.') print(f'{tarefa=} adicionada na lista de tarefas.')
tarefas.append(tarefa) tarefas.append(tarefa)
print() print()
listar(tarefas)
def adicionar(tarefa, tarefas): def adicionar(tarefa, tarefas):
@@ -56,6 +58,7 @@ def adicionar(tarefa, tarefas):
print(f'{tarefa=} adicionada na lista de tarefas.') print(f'{tarefa=} adicionada na lista de tarefas.')
tarefas.append(tarefa) tarefas.append(tarefa)
print() print()
listar(tarefas)
tarefas = [] tarefas = []
@@ -65,21 +68,32 @@ while True:
print('Comandos: listar, desfazer e refazer') print('Comandos: listar, desfazer e refazer')
tarefa = input('Digite uma tarefa ou comando: ') tarefa = input('Digite uma tarefa ou comando: ')
if tarefa == 'listar': comandos = {
listar(tarefas) 'listar': lambda: listar(tarefas),
continue 'desfazer': lambda: desfazer(tarefas, tarefas_refazer),
elif tarefa == 'desfazer': 'refazer': lambda: refazer(tarefas, tarefas_refazer),
desfazer(tarefas, tarefas_refazer) 'clear': lambda: os.system('clear'),
listar(tarefas) 'adicionar': lambda: adicionar(tarefa, tarefas),
continue }
elif tarefa == 'refazer': comando = comandos.get(tarefa) if comandos.get(tarefa) is not None else \
refazer(tarefas, tarefas_refazer) comandos['adicionar']
listar(tarefas) comando()
continue
elif tarefa == 'clear': # if tarefa == 'listar':
os.system('clear') # listar(tarefas)
continue # continue
else: # elif tarefa == 'desfazer':
adicionar(tarefa, tarefas) # desfazer(tarefas, tarefas_refazer)
listar(tarefas) # listar(tarefas)
continue # continue
# elif tarefa == 'refazer':
# refazer(tarefas, tarefas_refazer)
# listar(tarefas)
# continue
# elif tarefa == 'clear':
# os.system('clear')
# continue
# else:
# adicionar(tarefa, tarefas)
# listar(tarefas)
# continue