Python CLI 待办事项列表管理器

使用 Python 创建功能齐全的命令行待办事项列表管理器。了解如何将函数映射到命令、管理数组和处理状态。

在编辑器中尝试

概述

命令行应用程序 (CLI) 构成了开发人员工具的支柱。

该脚本在内存中维护任务列表,并提供查看、添加和完成任务的菜单方法。

该架构通过将数据(列表)与交互(函数)分离来模仿原始模型-视图-控制器(MVC)模式。

代码和执行输出

一个简单的内存任务管理器,演示列表突变。

class TodoApp:
    def __init__(self):
        self.tasks = []
        
    def add_task(self, task):
        self.tasks.append({"title": task, "done": False})
        print(f"Added: '{task}'")
        
    def complete_task(self, index):
        if 0 <= index < len(self.tasks):
            self.tasks[index]["done"] = True
            print(f"Completed: '{self.tasks[index]['title']}'")
            
    def view_tasks(self):
        print("\n--- Your Tasks ---")
        for i, task in enumerate(self.tasks):
            status = "[x]" if task["done"] else "[ ]"
            print(f"{i}. {status} {task['title']}")
        print("------------------\n")

app = TodoApp()
app.add_task("Learn Python basics")
app.add_task("Build a portfolio project")
app.view_tasks()

app.complete_task(0)
app.view_tasks()
端子输出
Added: 'Learn Python basics'
Added: 'Build a portfolio project'

--- Your Tasks ---
0. [ ] Learn Python basics
1. [ ] Build a portfolio project
------------------

Completed: 'Learn Python basics'

--- Your Tasks ---
0. [x] Learn Python basics
1. [ ] Build a portfolio project
------------------

逐步实施

  • 任务管理实用程序
  • 面向对象的状态管理练习
  • 强大的无服务器功能的构建块

常见问题解答

如何永久保存任务?

要保留数据,您可以使用 Python 的内置“json”模块将 self.tasks 列表写入文件(如tasks.json),并在“__init__”期间加载它。

相关主题