我对你的另一个问题发表了评论,所以这是我的 2 美分:
Python 是面向对象的,但您不必使用它。但是,如果您选择这样做,您可以利用 Class 的这种机制来保存一些属性:
class Config():
"""
hold some vars for example.
"""
def __init__(self):
self.CONFIG_LOG_FILE_DIR='/tmp2/ozn/venus_mon_log/'
self.DATE_FORMAT="%Y%m%d"
#self.FILE_NAME_BASE_TEMPLATE=eval('datetime.datetime.now().strftime(self.DATE_FORMAT)')+'-venus_utilization.log'
self.FILE_NAME_BASE_TEMPLATE='venus_utilization.log'
self.FILE_NAME=self.CONFIG_LOG_FILE_DIR+self.FILE_NAME_BASE_TEMPLATE
self.MAX_FILE_SIZE=1024*1024*50 # in Byte, 50 in MB.
您可以创建一个实例,让您访问属性:
cfg = Config()
然后使用以下命令访问它们:
cfg.MAX_FILE_SIZE
甚至改变它们:
cfg.MAX_FILE_SIZE=50000
cfg.MAX_FILE_SIZE=calculateNewSize()
等等...您还可以执行以下操作:
# this will print all items that an instance has
if options.debug:
print "DEBUG INFO:"
for k,v in vars(cfg).iteritems():
print k,v