传递大量数据进入函数的最佳方法

2024-04-26 00:02:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个大型项目,在这个项目中,首先要收集关于需要做什么的信息。大部分的信息需要传递到计算器中。你知道吗

目前,这是通过一个从一个函数传递到另一个函数的大字典来完成的,并且不需要任何规则就可以添加新的键。结果是没有人知道字典里的内容和位置。你知道吗

在python中,有什么更好的方法可以做到这一点?还有什么其他可行的选项可以将数据传递给端点,但要以更结构化的方式,以便只允许在字典中设置某些键,并且只能具有某些值?你知道吗

这里有一个我的意思的例子:

def gather_data(data):
    data['one'] = 1


def manipulate_data(data):
    data['two'] = 2
    data['whatever'] = 3


def calculate(data):
    result = data['one'] + data['two']
    return result


if __name__ == '__main__':
    data = {}
    gather_data(data)
    manipulate_data(data)
    result = calculate(data)
    print(result)

Tags: 项目函数信息data字典defresultone
1条回答
网友
1楼 · 发布于 2024-04-26 00:02:28

事实证明,具有属性的单例可能是最好的方法: “”“包含可以在需要时实例化的配置类”“”

class Singleton(type):
    def __init__(cls, name, bases, dict):
        super(Singleton, cls).__init__(name, bases, dict)
        cls.instance = None

    def __call__(cls, *args, **kw):
        if cls.instance is None:
            cls.instance = super(Singleton, cls).__call__(*args, **kw)
        return cls.instance


class Configuration(object):
    __metaclass__ = Singleton

    def __init__(self):
        self.mode = None
        self.system = None

然后,配置可以被导入、实例化和编辑到任何需要的地方,它将调整它的状态。你知道吗

相关问题 更多 >