Python枚举(Enum)技巧,你值得了解

Python枚举(Enum)技巧,你值得了解

编码文章call10242025-06-04 14:52:337A+A-

枚举(Enum)提供了更清晰、结构化的方式来定义常量。通过为枚举添加行为、自动分配值和存储额外数据,可以提升代码的可读性、可维护性,并与数据库结合使用时,使用字符串代替数字能简化调试和查询。

Python中的枚举(Enum)

枚举让你以结构化的方式定义命名常量。比如:

这让代码的可读性立刻提升。

为枚举添加行为

大多数人只停留在这里,他们仅仅将枚举用于存储值,错过了其中一个最好的部分——你可以为枚举添加方法。没有到处重复角色检查,而是将逻辑移到了枚举本身:

这样更简洁,维护起来也更容易。如果需要为新角色添加编辑权限,只需更新枚举——不再需要在多个文件中找寻条件。

自动分配值

手动为枚举分配数字感觉……有些不必要。Python 提供了一个内建的方式来处理这个问题:

这会自动将 1、2、3 分配给角色——这样我就不需要再考虑数字了。

带有额外数据的枚举

有一段时间,我意识到我需要的不仅仅是一个名称——角色还需要不同的权限和描述。于是,我将这些信息嵌入到枚举中,而不是管理单独的字典:

不需要单独的映射。所有信息都在一起,使代码更易于阅读和扩展。

枚举与数据库

如果需要将枚举存储在数据库中,使用字符串而不是数字。

这样,数据库中保存的不是数字 1,而是 "admin"。这样做能让调试和查询变得更容易。

点击这里复制本文地址 以上内容由文彬编程网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

文彬编程网 © All Rights Reserved.  蜀ICP备2024111239号-4