Python 定义常量

Posted WebLinuxStudy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 定义常量相关的知识,希望对你有一定的参考价值。

常量在编写程序的时候,一旦设定就不能再进行变动,常量一种约定俗成的方式,所有字母大写并用下划线分隔单词的方式(如MAX_VALUE, OUT_TIME等),但是python没有提供设置常量用法,需要自己自定义类实现常量功能。

自定义类实现常量功能

这种办法就是解决简单用全大写和下划线定义固定变量无法解决篡改的问题。
下面是一个例子:
创建一个 constant.py 文件,在其中创建const类

class Const():
class ConstError(TypeError): pass

class ConstCaseError(ConstError): pass

def __setattr__(self, key, value):
if key in self.__dict__.keys():
# 存在性验证
raise self.ConstError("Can‘t change a const variable: ‘%s‘" % key)

if not key.isupper():
# 语法规范验证
raise self.ConstCaseError("Const variable must be combined with upper letters:‘%s‘" % key)

self.__dict__[key] = value


如何使用自定义常量类
from constant import Const

const = Const()

const.TEST = ‘HH‘
print(const.TEST)
# 尝试修改变量
const.TEST = ‘JJ‘
# 尝试常量名称为小写字母
const.test = ‘HH‘

 

以上是关于Python 定义常量的主要内容,如果未能解决你的问题,请参考以下文章

Python - 在函数内部定义常量

python中常量类型都有哪些

如何在 Python 中记录模块常量?

python定义变量常量

python常量

python-day1