我想知道是否有一种更干净的方法来设置许多配置方法和变量。能否以更简洁的Python方式完成此操作?我想到了字典,但不确定这是否是最佳实践。
script_name = sys.argv[0].split('.')[0]
now = datetime.datetime.today()
today = datetime.date.today()
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
config_file = '%s/%s_config.ini' % (ini_path, target_os)
config = configparser.ConfigParser()
config.read(config_file)
config.sections()
cwd = os.getcwd()
base_dir = config.get('root_dir', 'dir')
file_name = 'fakeappname.%s.%s.log' % (target_os, today)
log_file = os.path.join(cwd, file_name)
log_key = log_file.split('/')[-1]
handler = logging.FileHandler(log_file, 'w', 'utf-8')
handler.setLevel(logging.INFO)
formatter = logging.Formatter(
'%(asctime)s - %(name)s - %(levelname)s - %(message)s -'
' {0}'.format(socket.gethostname()))
handler.setFormatter(formatter)
logger.addHandler(handler)
您有很多可以像这样而不是:来内联执行的代码
cwd = os.getcwd()
log_file = os.path.join(cwd, file_name)
log_key = log_file.split('/')[-1]
您可以做
log_key = os.path.join(os.getcwd(), file_name).split('/')[-1]
类似的事情将要求您添加注释以进行解释,无论如何您都应该这样做。