为了账号安全,请及时绑定邮箱和手机立即绑定

将所有默认值移动到一个 python 文件中

将所有默认值移动到一个 python 文件中

UYOU 2021-07-05 05:12:03
我有一个 python 文件,其中包含我项目中所有其他类的所有默认值# config.pyDEFAULT_WORKER_TYPE = 'A'DEFAULT_METRIC_TYPE = 'euclid'...# worker.pyimport configclass Worker:    def __init__(self, worker_type=config.DEFAULT_WORKER_TYPE):        pass# metric.pyimport configclass Metric:    def __init__(self, metric_type=config.DEFAULT_METRIC_TYPE):        pass这工作正常,但后来我想使用Enumforworker_type和metric_type代替原始字符串以避免输入错误# config.pyfrom worker import WorkerTypefrom metric import MetricTypeDEFAULT_WORKER_TYPE = WorkerType.ADEFAULT_METRIC_TYPE = MetricType.EUCLID# worker.pyfrom enum import Enumimport configclass WorkerType(Enum):    A = 'A'    B = 'B'class Worker: # the same# metric.pyfrom enum import Enumimport configclass MetricType(Enum):    EUCLID = 'euclid'    MANHATTAN = 'manhattan'class Metric: # the same现在,在我看来,后一个版本效率不高,因为它有某种循环导入,如果我的主程序只使用一个文件(worker.py例如),它仍然必须导入所有其他文件(metric.py),因为config.py全部导入其中。有没有更好的方法来实现这一目标?我将所有默认值移入的原因config.py是我需要定期对这些值进行实验。将所有内容放在一个地方帮助我不必记住要更改哪个文件。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 159 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信