Python待办事项列表List/Loops

Python To-Do List List/Loops

在尝试制作此待办事项列表代码时遇到了一些问题。我正在尝试编写一个程序,提示用户为他们的待办事项列表输入一个项目。然后将每个项目添加到列表中。当用户没有输入时,程序将分两列显示待办事项列表。问题是输入循环应该有一个 try/except 块,该块从循环中掉落。一开始应该看起来像这样:(这里的间距很奇怪我知道如何在 pyscriptor 中正确 space)

try:                                                                                                  
    item = input('Enter an item for your to-do list. ' + \                                        
                 'Press <ENTER> when done: ') 
             *… Python code …*                                                    
    if len(item) == 0:                                                                                   
  *#Needed to break out of the loop in interactive mode*                                              
      break 
except EOFError:    
   break 

如果有人有任何关于如何开始的提示,将会非常有帮助。

让我们尝试将其分成几个步骤:

  1. 你想要一个根据命令中断的无限循环吗?

    while True:
    

    幸运的是,终端和 python 解释器已经提供了 process-kill 当您按下 Ctrl+C 时中断,因此您不需要实现它。但是,如果你想进行一些破坏清理,你可以捕获 KeyboardInterrupt:

    try:
        while True:
    except KeyboardInterrupt:
        print('exiting program, bye!')
        sys.exit(0)
    
  2. 然后你想在每个循环迭代中输入

    while True:
        inp = input('what do?')
    
  3. 最后根据输入确定动作:

    TODO = []
    
    while True:
        inp = input('add task: ')
        if not inp.strip():
            for task in TODO:
                print(f'- {task}')
        else:
            TODO.append(inp)
    

上面的程序会在输入为空时打印任务,否则将输入添加到待办事项列表。您可以按 Ctrl+C

退出程序