-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtaskmanager.py
More file actions
54 lines (41 loc) · 1.22 KB
/
Copy pathtaskmanager.py
File metadata and controls
54 lines (41 loc) · 1.22 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import json
class Task():
id =0
def __init__(self, name, description ):
self.name = name
self.description = description
self.id= Task.id+1
Task.id=self.id
self.done = False
def add_task(name,description):
with open("tasks.json","r") as f:
tasks=json.load(f)
new_id = max((task["id"] for task in tasks), default=0) + 1
task = Task(name, description)
task.id = new_id
tasks.append(task.__dict__)
with open("tasks.json","w") as f:
json.dump(tasks,f)
def done_task(id):
i=int(Task.id)-1
task=json.load(open("tasks.json"))
if task[i]['id']==id:
task[i]['done']=True
with open("tasks.json","w") as f:
json.dump(task,f)
def list_tasks():
task=json.load(open("tasks.json","r"))
if not task:
print("No tasks found")
return
for t in task:
if t["done"] == False:
print(f"{t['id']}. [ ] {t['name']}")
else:
print(f"{t['id']}. [x] {t['name']}")
def delete_task(id):
i=int(Task.id)-1
task=json.load(open("tasks.json","r"))
del task[i]
with open("tasks.json","w") as f:
json.dump(task,f)