一、项目的目录结构:
bin:执行文件夹
config:自定义配置文件
lib:公共的模块或者类文件
src:核心业务逻辑代码
二、配置文件的编写
1)config代码如下
from lib.conf import global_settings from config import settings class Settings(): def __init__(self): self.__setAttr(global_settings) #用户一上来配置文件可能是什么都没写的,为了防止出错 try: self.__setAttr(settings) except Exception as e: pass # def __init__(self): # #目标继承自定义的配置和全局的默认配置 # for key in dir(global_settings): # if key.isupper(): # v=getattr(global_settings,key) # setattr(self,key,v) # #这两个for循环不能换顺序,因为自定义的设置的优先级更高 # for key in dir(settings): # if key.isupper(): # v=getattr(settings,key) # setattr(self,key,v) def __setAttr(self,conf): for key in dir(conf): if key.isupper(): v=getattr(conf,key) setattr(self,key,v) setting=Settings()
2)global_settings代码如下
EMAIL='pengbin@qq.com'
3)settings代码如下
#自定义的配置文件 USER='root' PWD='
4)start代码如下
from lib.conf.config import setting if __name__ == '__main__': print(setting.EMAIL) print(setting.USER) print(setting.PWD)