新闻动态

良好的口碑是企业发展的动力

pythoninput

发布时间:2024-12-16 08:02:20 点击量:9
中文html5模板网页模板

 

如果你需要Python的代码输入示例并且要求长度不少于1000字,可以通过创建一个稍微复杂一些的程序来实现。下面是一个示例程序:它是一个简单的任务管理应用,允许用户添加、移除和查看任务。这个程序包括基本的用户交互,它使用了Python的类和列表。让我们来看这个代码示例。

class Task:
    def __init__(self, description, priority):
        self.description = description
        self.priority = priority
        self.is_completed = False

    def __str__(self):
        return f"Task(description={self.description}, priority={self.priority}, completed={self.is_completed})"

    def mark_as_completed(self):
        self.is_completed = True

class TaskManager:
    def __init__(self):
        self.tasks = []

    def add_task(self, description, priority):
        new_task = Task(description, priority)
        self.tasks.append(new_task)
        print(f"Added task: {new_task}")

    def remove_task(self, index):
        if 0 <= index < len(self.tasks):
            task = self.tasks.pop(index)
            print(f"Removed task: {task}")
        else:
            print("Task index out of range.")

    def view_tasks(self):
        if not self.tasks:
            print("No tasks currently available.")
            return
        for i, task in enumerate(self.tasks):
            print(f"{i}. {task}")

    def mark_task_completed(self, index):
        if 0 <= index < len(self.tasks):
            task = self.tasks[index]
            task.mark_as_completed()
            print(f"Marked task as completed: {task}")
        else:
            print("Task index out of range.")

    def view_completed_tasks(self):
        completed_tasks = [task for task in self.tasks if task.is_completed]
        if not completed_tasks:
            print("No completed tasks.")
            return
        for i, task in enumerate(completed_tasks):
            print(f"{i}. {task}")

    def view_pending_tasks(self):
        pending_tasks = [task for task in self.tasks if not task.is_completed]
        if not pending_tasks:
            print("No pending tasks.")
            return
        for i, task in enumerate(pending_tasks):
            print(f"{i}. {task}")

def main():
    task_manager = TaskManager()

    while True:
        print("\nTask Manager Menu:")
        print("1. Add Task")
        print("2. Remove Task")
        print("3. View All Tasks")
        print("4. Mark Task as Completed")
        print("5. View Completed Tasks")
        print("6. View Pending Tasks")
        print("0. Exit")

        choice = input("Enter your choice: ")

        if choice == '1':
            description = input("Enter task description: ")
            priority = input("Enter task priority (low, medium, high): ")
            task_manager.add_task(description, priority)
        elif choice == '2':
            index = int(input("Enter the task index to remove: "))
            task_manager.remove_task(index)
        elif choice == '3':
            task_manager.view_tasks()
        elif choice == '4':
            index = int(input("Enter the task index to mark completed: "))
            task_manager.mark_task_completed(index)
        elif choice == '5':
            task_manager.view_completed_tasks()
        elif choice == '6':
            task_manager.view_pending_tasks()
        elif choice == '0':
            print("Exiting Task Manager.")
            break
        else:
            print("Invalid choice! Please try again.")

if __name__ == "__main__":
    main()

代码解释

  1. Task类:表示一个任务,有描述、优先级和完成状态。初始时,任务的完成状态是False__str__方法定义了当打印任务对象时其输出样式,mark_as_completed方法将任务的完成状态设为True

  2. TaskManager类:管理多个任务的类。提供了添加、移除、查看和管理任务的功能。任务存储于一个列表中。

  3. add_task方法:添加新任务到任务列表中,打印出刚刚添加的任务。

  4. remove_task方法:根据给定索引从列表中移除任务。如果索引不在任务列表的范围内,打印错误信息。

  5. view_tasks方法:打印所有任务的列表,包括索引和详细信息。

  6. mark_task_completed方法:将特定索引任务标记为已完成,确保索引在合理范围内。

  7. view_completed_tasks和view_pending_tasks方法:分别显示已完成的任务和待办任务的列表。

  8. main函数:任务管理的主循环,通过控制台与用户互动允许用户选择不同操作(添加、删除、查看、完成任务)。

该程序是功能完整的任务管理工具,允许用户在Python控制台中管理任务,展示了类的使用、列表的操作以及控制流的基本知识。

如果你有更多的要求或需要进一步的扩展,欢迎详细说明!

免责声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,也不承认相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,请发送邮件至:dm@cn86.cn进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。本站原创内容未经允许不得转载。
上一篇: react recoil
下一篇: 前端分页