英文网站seo如何做专业做婚庆的网站有哪些

张小明 2026/1/8 6:04:33
英文网站seo如何做,专业做婚庆的网站有哪些,石家庄最新防疫政策,装修网页设计#x1f6e0;️ 说明#xff1a;经过前十九篇的学习#xff0c;你已掌握 Python 核心语法、文件操作、异常处理、OOP、模块组织和虚拟环境等关键技能。本篇将整合所有知识#xff0c;带你从零开始开发一个功能完整、结构清晰、可维护的命令行 To-Do List#xff08;待办事…️说明经过前十九篇的学习你已掌握 Python 核心语法、文件操作、异常处理、OOP、模块组织和虚拟环境等关键技能。本篇将整合所有知识带你从零开始开发一个功能完整、结构清晰、可维护的命令行 To-Do List待办事项应用。你将实践项目目录结构设计面向对象建模Task、TaskManagerJSON 数据持久化命令行交互argparse 用户输入异常处理与用户友好提示虚拟环境与依赖管理1. 项目目标与功能清单✅ 最终应用支持以下操作# 添加任务python todo.pyadd买牛奶# 列出所有任务python todo.py list# 标记任务完成python todo.pydone1# 删除任务python todo.py remove2# 显示帮助python todo.py --help数据存储格式tasks.json[{id:1,title:买牛奶,completed:false,created_at:2025-12-18T16:30:00}]2. 项目结构设计遵循前文最佳实践todo-cli/ ├── venv/ ← 虚拟环境不提交 ├── requirements.txt ├── .gitignore ├── README.md ├── todo.py ← 主程序入口 └── todolib/ ← 核心功能包 ├── __init__.py ├── task.py ← Task 类 ├── storage.py ← 文件读写 └── manager.py ← 任务管理逻辑3. 步骤一创建虚拟环境与依赖mkdirtodo-clicdtodo-cli python -m venv venvsourcevenv/bin/activate# Linux/Mac# venv\Scripts\activate # Windows# 目前无第三方依赖但保留文件echo# 项目依赖requirements.txt 本项目仅使用标准库无需安装额外包4. 步骤二定义Task类todolib/task.pyfromdatetimeimportdatetimefromtypingimportDictclassTask:def__init__(self,title:str,completed:boolFalse,created_at:strNone):self.titletitle self.completedcompleted self.created_atcreated_atordatetime.now().isoformat()self.idNone# 将由 TaskManager 分配defto_dict(self)-Dict:return{id:self.id,title:self.title,completed:self.completed,created_at:self.created_at}classmethoddeffrom_dict(cls,data:Dict)-Task:taskcls(data[title],data[completed],data[created_at])task.iddata[id]returntaskdef__str__(self):status✓ifself.completedelse○returnf[{status}]{self.title}✅ 使用类型提示typing提升可读性✅ 支持序列化to_dict与反序列化from_dict5. 步骤三实现数据存储todolib/storage.pyimportjsonfrompathlibimportPathfromtypingimportList,Dictfrom.taskimportTask TASKS_FILEPath(tasks.json)defload_tasks()-List[Task]:ifnotTASKS_FILE.exists():return[]try:datajson.loads(TASKS_FILE.read_text(encodingutf-8))return[Task.from_dict(item)foritemindata]except(json.JSONDecodeError,KeyError)ase:print(f⚠️ 警告任务文件损坏已重置。错误:{e})return[]defsave_tasks(tasks:List[Task])-None:data[task.to_dict()fortaskintasks]TASKS_FILE.write_text(json.dumps(data,ensure_asciiFalse,indent2),encodingutf-8) 安全读取捕获 JSON 解析错误防止程序崩溃6. 步骤四任务管理逻辑todolib/manager.pyfromtypingimportListfrom.taskimportTaskfrom.storageimportload_tasks,save_tasksclassTaskManager:def__init__(self):self.tasks:List[Task]load_tasks()self._next_idmax((t.idfortinself.tasks),default0)1defadd_task(self,title:str)-Task:taskTask(title)task.idself._next_id self._next_id1self.tasks.append(task)save_tasks(self.tasks)returntaskdefget_task_by_id(self,task_id:int)-Task:fortaskinself.tasks:iftask.idtask_id:returntaskraiseValueError(f任务 ID{task_id}不存在)defmark_done(self,task_id:int)-None:taskself.get_task_by_id(task_id)task.completedTruesave_tasks(self.tasks)defremove_task(self,task_id:int)-None:taskself.get_task_by_id(task_id)self.tasks.remove(task)save_tasks(self.tasks)deflist_tasks(self,show_completed:boolTrue)-List[Task]:ifshow_completed:returnself.tasksreturn[tfortinself.tasksifnott.completed]✅ 封装业务逻辑主程序只需调用方法✅ 自动分配唯一 ID避免冲突7. 步骤五主程序入口todo.py#!/usr/bin/env python3importargparsefromtodolib.managerimportTaskManagerdefmain():parserargparse.ArgumentParser(description简易命令行 To-Do List)subparsersparser.add_subparsers(destcommand,help可用命令)# addadd_parsersubparsers.add_parser(add,help添加新任务)add_parser.add_argument(title,help任务内容)# listlist_parsersubparsers.add_parser(list,help列出任务)list_parser.add_argument(--all,actionstore_true,help显示已完成任务)# donedone_parsersubparsers.add_parser(done,help标记任务完成)done_parser.add_argument(id,typeint,help任务ID)# removeremove_parsersubparsers.add_parser(remove,help删除任务)remove_parser.add_argument(id,typeint,help任务ID)argsparser.parse_args()ifnotargs.command:parser.print_help()returnmanagerTaskManager()try:ifargs.commandadd:taskmanager.add_task(args.title)print(f✅ 已添加任务 #{task.id}:{task.title})elifargs.commandlist:tasksmanager.list_tasks(show_completedargs.all)ifnottasks:print( 暂无任务)returnfortaskintasks:print(f#{task.id}{task})elifargs.commanddone:manager.mark_done(args.id)print(f 任务 #{args.id}已完成)elifargs.commandremove:manager.remove_task(args.id)print(f️ 任务 #{args.id}已删除)exceptValueErrorase:print(f❌ 错误:{e})exceptExceptionase:print(f 未知错误:{e})if__name____main__:main()✨ 用户友好提示✅/❌/ 等 emoji 提升体验️ 异常捕获防止因无效 ID 导致崩溃8. 测试你的应用# 添加任务python todo.pyadd学习 Pythonpython todo.pyadd写博客# 查看任务python todo.py list# 输出# #1 [○] 学习 Python# #2 [○] 写博客# 完成任务python todo.pydone1# 再次查看默认隐藏已完成python todo.py list# 输出# #2 [○] 写博客# 查看所有python todo.py list --all# 删除任务python todo.py remove2 所有数据自动保存到tasks.json重启后依然存在9. 项目优化建议进阶添加单元测试使用unittest或pytest支持任务优先级或截止日期实现“清空已完成”命令用rich库美化终端输出需安装第三方包打包为可执行命令如pip install -e .10. 总结你已掌握的核心能力技能在本项目中的体现OOP 设计Task、TaskManager封装数据与行为文件操作storage.py安全读写 JSON异常处理捕获无效 ID、文件损坏等错误命令行交互argparse构建专业 CLI模块化功能拆分为todolib/包虚拟环境隔离开发环境恭喜你已具备独立开发小型 Python 应用的能力。下一步方向扩展功能添加子任务、分类标签、搜索学习 Web 开发用 Flask/Django 将此应用转为网页版探索自动化用此工具管理你的学习计划阅读开源项目如 todo-txt编程不是学出来的是写出来的。从今天起你不再只是学习者而是创造者继续编码用 Python 改变你的世界
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

apache添加多个网站银川市建设诚信平台网站

今天给大家分享一份热乎的大模型应用开发面经,希望能够帮到近期冲击大模型秋招的同学。01 时间范围 近半年。 02 实际面过的公司 阿里、腾讯、美团、字节、快手、同程、京东、360、keep、滴滴、印象笔记、作业帮、彩云科技、蓝色光标、江城互娱、Aviagames、Hungry …

张小明 2026/1/8 6:04:32 网站建设

51网站空间还有吗网络建设和维护

第一章:Docker Buildx 镜像推送自动化概述Docker Buildx 是 Docker 官方提供的 CLI 插件,扩展了原生 docker build 命令的能力,支持多平台构建、并行执行和高级镜像输出选项。借助 Buildx,开发者可以在单一命令中为不同 CPU 架构&…

张小明 2026/1/8 5:57:30 网站建设

搜狗站群系统哪个网站做螺丝生意好

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Blazor WebAssembly企业CRM系统,包含客户管理、销售机会跟踪和报表模块。客户管理需要CRUD操作和高级搜索;销售机会要有状态机工作流;报…

张小明 2026/1/8 5:54:48 网站建设

vue做pc网站济南企业建站怎么样

温州商学院本科毕业设计(论文)开题报告毕业设计(论文)题目:基于Vue.js的甜品销售数据可视化系统的设计与实现姓 名学 号指导教师班 级选题的背景与意义:1.1 选题背景:随着信息技术的迅猛发展…

张小明 2026/1/8 5:52:45 网站建设

网站建设报价表下载网站代运营多少钱一个月

如何快速掌握开源贴片机:从入门到精通的完整指南 【免费下载链接】lumenpnp The LumenPnP is an open source pick and place machine. 项目地址: https://gitcode.com/gh_mirrors/lu/lumenpnp 在现代电子制造领域,自动化贴片技术正成为提升生产效…

张小明 2026/1/8 5:50:42 网站建设

网站建设团队品牌策划服务

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个团队协作专用的Git图形化界面工具,需要包含以下功能:1. 实时显示团队成员提交状态 2. 冲突可视化提示 3. 代码审查批注集成 4. 分支策略检查 5. 合并…

张小明 2026/1/8 5:48:31 网站建设