我有多个(python)模块,在这些模块中我使用相同的输入数据,并且变量也具有相同的名称。
我创建了一个实例化变量的模块data_loading.py
。然后,在data_analysis_xx
模块中导入所需的变量。]>
例如,
" Module data_analysis_1 " from data_loading import var_1, var_2,…, var_k " Module data_analysis_2 " from data_loading import var_1, var_3
这样,我避免在每个模块中复制并粘贴相同的200行代码以加载相同或部分相同的数据集
但是,当我导入data_loading时,即使我实际上仅导入一个或几个变量,也要加载/处理其中的所有变量。这可能很耗时,尤其是因为在data_loading中我还做了一些基本的数据操作(检查,拆分,剪切,排序等)
在多个子模块中拆分数据加载->稍微减少了问题,但增加了要加载的文件数量:复杂性,复杂性,容易出错。不好
创建一个处理数据加载并仅通过该类加载变量的类?实际上如何做到这一点?那我该如何导入变量呢?“从data_loading导入Loader.var_1为var_1…,Loader.var_k为var_k”?
实现延迟加载->我的许多变量都是处理实际数据加载(从文件中检索数据)的类。因此,延迟加载将有助于减少时间上的总成本。
参考:
我有多个(python)模块,在这些模块中我使用相同的输入数据,并且变量也具有相同的名称。我创建了一个模块data_loading.py,在其中实例化了变量。然后导入...
处理所有问题的一种方法是创建一个将按需创建单例的工厂。