提升陪玩源码可读性,这两种方式很关键
提升陪玩源码可读性,这两种方式很关键
第一种,使用常量
直接将status所有可能的值用常量值代替
NO_FINISH = 0 LEARNING = 1 FINISH = 2 EXPRIED = 3 if status== NO_FINISH: pass elif status==LEARNING: pass if finished: status =FINISH
这种也能提高陪玩源码的可读性,不过有个问题是,如果有很多这样的字段,不仅有学习状态,还有考试状态,如果每个状态都有好几个值,那么我们会定义很多个类似的常量值。
而实际上这4个值都应该是归为一类的,就是学习状态,那么我们能不能归类处理呢?
答案就是用 namedtuple
第二种、使用namedtuple
namedtuple 是一个具名元组,就是一个带有名字的元组,元组中的每个元素都对应有一个名字,是不是非常适合用在这种场景?
from collections import namedtuple StudyStatus = namedtuple("StudyStatus", "no_start, learning, finish, end") STUDY_STATUS = StudyStatus(0, 1, 2, 3) if status== STUDY_STATUS.no_start: pass elif status==STUDY_STATUS.learing: pass if finished: status =STUDY_STATUS.finish
这样我们只需要定义一个枚举常量对象,里面有4个值,分别代表4种不同的状态。namedtuple 可以认为是一个更轻量级的类,只有属性没有方法。
用namedtuple来重构,而且还不需要修改Model层面的字段属性,改动最小,却大大提高了陪玩源码的可读性。
以上就是提升陪玩源码可读性,这两种方式很关键, 更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2023-06-29 直播平台源代码,TextView文本折叠查看显示更多效果
2023-06-29 直播平台制作,使用动画设置ProgressBar进度
2023-06-29 直播app开发搭建,搜索框+含搜索历史记录
2022-06-29 直播软件开发,Android自定义简单的音频波谱view
2022-06-29 直播平台开发,进入可视区域执行动画、动效、添加样式类名
2022-06-29 短视频平台搭建,淡入淡出 支持左滑右滑轮播图