读《编写高质量代码改善python的91个建议》笔记 建议7:将常量集中到一个文件
常量需要满足两个条件:
1.不允许修改
2.应该符合命令规范
const.py
# -*- coding: utf-8 -*-
"""
Created on Wed Aug 20 18:04:20 2014
@author: HP
"""
class _const:
class ConstError(TypeError): pass
class ConstCaseError(ConstError): pass
def __setattr__(self,name ,value):
if self.__dict__.has_key(name):
raise self.ConstError,"Cannot change const.%s"%name
if not name.isupper():
raise self.ConstCaseError,\
'const name "%s" is not all uppercase '%name
self.__dict__[name] = value
import sys
sys.modules[__name__] = _const() constant.py
# -*- coding: utf-8 -*-
"""
Created on Wed Aug 20 18:18:05 2014
@author: HP
"""
import const
const.COMPANY = 'IBM'
const.MY_CONSTANT = 1
const.MY_SECOND_CONSTANT = "HELLO"
test_const.py
# -*- coding: utf-8 -*-
"""
Created on Wed Aug 20 18:04:50 2014
@author: HP
"""
from constant import const
print const.COMPANY
print const.MY_CONSTANT
print const.MY_SECOND_CONSTANT
本文提供了一种将常量集中到一个文件的策略,以改进Python代码质量,确保常量不可修改且遵循命令规范。通过实例展示了如何实现这种策略,并在不同文件中使用这些常量。
341

被折叠的 条评论
为什么被折叠?



