Exercício (+solução) - salvando a lista de tarefas em JSON
This commit is contained in:
4
aula119.json
Normal file
4
aula119.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
[
|
||||||
|
"tomar café",
|
||||||
|
"ler"
|
||||||
|
]
|
||||||
23
aula119.py
23
aula119.py
@@ -8,6 +8,7 @@
|
|||||||
# desfazer = [] -> Refazer ['caminhar', 'fazer café']
|
# desfazer = [] -> Refazer ['caminhar', 'fazer café']
|
||||||
# refazer = todo ['fazer café']
|
# refazer = todo ['fazer café']
|
||||||
# refazer = todo ['fazer café', 'caminhar']
|
# refazer = todo ['fazer café', 'caminhar']
|
||||||
|
import json
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
|
||||||
@@ -61,7 +62,26 @@ def adicionar(tarefa, tarefas):
|
|||||||
listar(tarefas)
|
listar(tarefas)
|
||||||
|
|
||||||
|
|
||||||
tarefas = []
|
def ler(tarefas, caminho_arquivo):
|
||||||
|
dados = []
|
||||||
|
try:
|
||||||
|
with open(caminho_arquivo, 'r', encoding='utf8') as arquivo:
|
||||||
|
dados = json.load(arquivo)
|
||||||
|
except FileNotFoundError:
|
||||||
|
print('Arquivo não existe')
|
||||||
|
salvar(tarefas, caminho_arquivo)
|
||||||
|
return dados
|
||||||
|
|
||||||
|
|
||||||
|
def salvar(tarefas, caminho_arquivo):
|
||||||
|
dados = tarefas
|
||||||
|
with open(caminho_arquivo, 'w', encoding='utf8') as arquivo:
|
||||||
|
dados = json.dump(tarefas, arquivo, indent=2, ensure_ascii=False)
|
||||||
|
return dados
|
||||||
|
|
||||||
|
|
||||||
|
CAMINHO_ARQUIVO = 'aula119.json'
|
||||||
|
tarefas = ler([], CAMINHO_ARQUIVO)
|
||||||
tarefas_refazer = []
|
tarefas_refazer = []
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
@@ -78,6 +98,7 @@ while True:
|
|||||||
comando = comandos.get(tarefa) if comandos.get(tarefa) is not None else \
|
comando = comandos.get(tarefa) if comandos.get(tarefa) is not None else \
|
||||||
comandos['adicionar']
|
comandos['adicionar']
|
||||||
comando()
|
comando()
|
||||||
|
salvar(tarefas, CAMINHO_ARQUIVO)
|
||||||
|
|
||||||
# if tarefa == 'listar':
|
# if tarefa == 'listar':
|
||||||
# listar(tarefas)
|
# listar(tarefas)
|
||||||
|
|||||||
Reference in New Issue
Block a user