我尝试根据文件名导入文件,例如:
project /
__init__.py
log.py
conf /
__init__.py
logger_settings.py
other_settings.py
在我的conf/__init__.py
文件中,我希望有类似的内容:
因此,与log.py
文件相比,我可以执行以下操作:
#!/usr/bin/env python -u
# -*- coding: utf-8 -*-
# vim: tabstop=4 shiftwidth=4 softtabstop=4 expandtab
import os
import logging
from project import conf
CONF = conf.get_settings('logger_settings')
def getLogger(identity ,log_file=CONF.log_file):
# Then access CONF to return settings
# For example:
# host = CONF.host would return something like 'localhost'
我想要这样的logger_settings.py
:
log_file = '/mnt/logs/'
host = 'localhost'
我需要如何修改conf/__init__.py
才能实现这一点?在
请参见
__import__
内置(低级别),以及importlib
(高级)。在它们提供了一种动态导入模块的方法(即,其名称由运行时值给定)。在
相关问题 更多 >
编程相关推荐