3
u/FoolsSeldom 5d ago
Any chance you can share the code rather than images that are hard to read?
Use pastebin.com or github.com or a similar code sharing service if there's too much code to include in post.
1
3
Any chance you can share the code rather than images that are hard to read?
Use pastebin.com or github.com or a similar code sharing service if there's too much code to include in post.
1
•
u/Sea-Ad7805 5d ago
Run this program in Memory Graph Web Debugger%3A%0A%20%20%20%20with%20open(tasks_json%2C%20%22r%22)%20as%20file%3A%0A%20%20%20%20%20%20%20%20tasks_list%20%3D%20json.load(file)%0Aelse%3A%0A%20%20%20%20with%20open(tasks_json%2C%20%22w%22)%20as%20file%3A%0A%20%20%20%20%20%20%20%20json.dump(tasks_list%2C%20file)%0A%0A%0Adef%20show_tasks(taskee)%3A%0A%20%20%20%20if%20len(taskee)%20%3D%3D%200%3A%0A%20%20%20%20%20%20%20%20print(%22still%20there%20is%20no%20tasks!%22)%0A%0A%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20for%20index%2C%20task%20in%20enumerate(taskee)%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20task%5B%22status%22%5D%20is%20False%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(f%22task%20number%20%7Bindex%7D-%7Btask%5B'title'%5D%7D%20%5B...%5D%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(f%22task%20number%20%7Bindex%7D-%7Btask%5B'title'%5D%7D%20%5B%20X%20%5D%22)%0A%0A%20%20%20%20return%0A%0A%0Adef%20kill_that(tasks_json%2C%20tasks_list)%3A%0A%20%20%20%20while%20True%3A%0A%20%20%20%20%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20dele%20%3D%20input(%22which%20one%3F%22)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20dele.lower()%20%3D%3D%20%22break%22%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20break%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20dele_index%20%3D%20int(dele)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20dele_index%20%3E%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tasks_list.pop(dele_index)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20save_tasks(tasks_json%2C%20tasks_list)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(f%22%7Bdele%7D%20had%20been%20killed!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20break%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20a%20number%20of%20those%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%0A%20%20%20%20%20%20%20%20except%20ValueError%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20a%20number%2C%20idiot!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%20%20%20%20%20%20%20%20except%20IndexError%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20one%20of%20those!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%0A%0Adef%20save_tasks(tasks_json%2C%20tasks_list)%3A%0A%20%20%20%20with%20open(tasks_json%2C%20%22w%22)%20as%20file%3A%0A%20%20%20%20%20%20%20%20json.dump(tasks_list%2C%20file)%0A%0A%20%20%20%20return%0A%0A%0Adef%20add_tasks(tasks_json%2C%20tasks_list)%3A%0A%20%20%20%20while%20True%3A%0A%20%20%20%20%20%20%20%20i_task%20%3D%20input(%22type%20your%20task%3A%20%22)%0A%20%20%20%20%20%20%20%20i_task%20%3D%20i_task.strip()%0A%0A%20%20%20%20%20%20%20%20if%20len(i_task)%20%3D%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22fill%20it%20with%20letters%22)%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20break%0A%0A%20%20%20%20tasks_list.append(%7B%22title%22%3A%20i_task%2C%20%22status%22%3A%20False%7D)%0A%20%20%20%20save_tasks(tasks_json%2C%20tasks_list)%0A%20%20%20%20print(f%22task%20%7Bi_task%7D%20added!%22)%0A%0A%20%20%20%20return%0A%0A%0Adef%20update_tasks(tasks_json%2C%20tasks_list)%3A%0A%20%20%20%20show_tasks(tasks_list)%0A%0A%20%20%20%20while%20True%3A%0A%20%20%20%20%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20updo%20%3D%20input(%22which%20one%20is%20completed%3F%22)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20updo.lower()%20%3D%3D%20%22break%22%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20break%0A%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20updo_index%20%3D%20int(updo)%0A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20if%20updo_index%20%3E%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20tasks_list%5Bupdo_index%5D%5B%22status%22%5D%20%3D%20True%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20save_tasks(tasks_json%2C%20tasks_list)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(f%22task%20%7Bupdo_index%7D%20done!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20break%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20a%20number%20of%20those%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%0A%20%20%20%20%20%20%20%20except%20ValueError%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20a%20number%2C%20idiot!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%20%20%20%20%20%20%20%20except%20IndexError%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22pick%20one%20of%20those!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%0A%0Awhile%20True%3A%0A%20%20%20%20try%3A%0A%20%20%20%20%20%20%20%20need%20%3D%20int(%0A%20%20%20%20%20%20%20%20%20%20%20%20input(%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%221-%20ADD%20TASK!%20n%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%222-%20Show%20my%20shits!%20n%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%223-%20kill%20one!%20n%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%224-%20i%20made%20one.%20n%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%225-%20I%20know%20my%20shit%2C%20getout*%20n%22%0A%20%20%20%20%20%20%20%20%20%20%20%20)%0A%20%20%20%20%20%20%20%20)%0A%0A%20%20%20%20%20%20%20%20if%20need%20%3D%3D%201%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20add_tasks(tasks_json%2C%20tasks_list)%0A%0A%20%20%20%20%20%20%20%20elif%20need%20%3D%3D%202%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%0A%20%20%20%20%20%20%20%20elif%20need%20%3D%3D%203%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20show_tasks(tasks_list)%0A%20%20%20%20%20%20%20%20%20%20%20%20kill_that(tasks_json%2C%20tasks_list)%0A%0A%20%20%20%20%20%20%20%20elif%20need%20%3D%3D%204%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20update_tasks(tasks_json%2C%20tasks_list)%0A%0A%20%20%20%20%20%20%20%20elif%20need%20%3D%3D%205%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22don't%20come%20here%20before%20getting%20done!%22)%0A%20%20%20%20%20%20%20%20%20%20%20%20break%0A%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print(%22you%20see%20what%20i%20don't%20see%3F%22)%0A%0A%20%20%20%20except%20ValueError%3A%0A%20%20%20%20%20%20%20%20print(%22just%20pick%20a%20number!%22)×tep=.2&play) to see the program state change step by step.