常量类实例是否是 PEP8 命名约定的例外?

cla*_*pas 3 python pep8

如果我在模块级别声明一个实例,该实例将被设置一次并且永远不会更改,我是否应该坚持 PEP8 中的大写命名约定?

例如

entity_manager = EntityManager(config)
Run Code Online (Sandbox Code Playgroud)

ENTITY_MANAGER = EntityManager(config)
Run Code Online (Sandbox Code Playgroud)

当常量是基本类型(例如整数)时,通常不进行讨论。但这又如何呢?

iDr*_*ish 5

PEP8 的总体精神是“保持代码一致”,无论该常量是 int、字符串还是类实例。

根据 PEP8,对于在整个代码中不会更改的常量,请使用大写字母并用下划线分隔。与一致性相结合,应该应用于整个常量,包括类实例。

关于使用大写字母

常量通常在模块级别定义,并全部用大写字母书写,并用下划线分隔单词。示例包括 MAX_OVERFLOW 和 TOTAL。