一起学习网 一起学习网


创建命令行待办事项应用程序

开发 command line app, to-do list, Python, task management, CLI application 03-23

如何创建一个简单的命令行待办事项应用程序

在这篇文章中,我们将创建一个简单的命令行待办事项(To-Do)应用程序。这个应用程序将使用Python编写,支持添加、列出和删除待办事项。

第1步:设置开发环境

在开始之前,请确保你已经安装了Python。你可以通过以下命令检查Python是否安装:

python --version

如果未安装,请访问Python官网进行下载和安装。

第2步:创建项目结构

创建一个新目录用于存放项目文件,并进入该目录:

mkdir todo_app
cd todo_app

在该目录下创建一个Python文件todo.py,这是我们的主文件。

第3步:计划功能

我们的应用程序将包括三个主要功能:

  1. 添加待办事项。
  2. 列出所有待办事项。
  3. 删除已完成的待办事项。

第4步:编写代码

首先,我们在todo.py中导入必要的模块并定义我们的数据结构。在这里,我们使用列表来存储待办事项。

# todo.py

def display_menu():
    print("\nSimple To-Do List")
    print("1. Add a To-Do")
    print("2. List To-Dos")
    print("3. Delete a To-Do")
    print("4. Exit")


def add_todo(todos):
    todo = input("Enter a new To-Do: ")
    todos.append(todo)
    print(f"'{todo}' added to the list!")

def list_todos(todos):
    print("\nYour To-Dos:")
    for idx, todo in enumerate(todos, start=1):
        print(f"{idx}. {todo}")

def delete_todo(todos):
    list_todos(todos)
    try:
        index = int(input("Enter the number of the To-Do to delete: ")) - 1
        if 0 <= index < len(todos):
            removed = todos.pop(index)
            print(f"'{removed}' has been removed from the list!")
        else:
            print("Invalid index!")
    except ValueError:
        print("Please enter a valid number.")


def main():
    todos = []
    while True:
        display_menu()
        choice = input("Choose an option: ")
        if choice == '1':
            add_todo(todos)
        elif choice == '2':
            list_todos(todos)
        elif choice == '3':
            delete_todo(todos)
        elif choice == '4':
            break
        else:
            print("Invalid choice, please try again.")


if __name__ == "__main__":
    main()

第5步:运行程序并测试

在命令行中运行程序:

python todo.py
  • 选择1以添加待办事项。输入你要添加的待办事项名称。
  • 选择2以列出所有待办事项。
  • 选择3以删除待办事项。输入要删除的待办事项的编号。
  • 选择4退出程序。

第6步:总结

恭喜你!你已经成功地创建了一个简单的命令行待办事项应用程序。通过这个项目,我们了解了如何处理用户输入、动态管理列表以及在命令行界面中进行简单交互。如果你想扩展这个应用程序,可以尝试为待办事项添加优先级、截止日期,或者将数据存储在文件中以便在退出后保存。


编辑:一起学习网