我正在编写代码,其中我将几个文件存储到内存中的数据结构中,然后在所有模块中使用该数据结构以访问该数据结构。 (节省时间)
由于代码是用python编写的,并且非常大,所以很难从函数到函数传递数据结构。
我是否有任何可能的方法在代码的开头存储文件到数据结构,然后我可以在任何模块中使用该数据结构,因为该数据结构在程序期间驻留在内存中执行。
请帮忙。非常重要.. !!
让我举个例子。
main.py .....这是项目的开始,这里我存储了完整的文件到数据结构。 other_module.py .....这是其他一些模块,我希望访问必须驻留在内存中的数据结构,因为main.py正在执行,并且它已经调用了other_module.py。
注意,我不能在other_module中存储文件到数据结构的东西,因为那样它会非常耗时,因为这里给出了一个非常小的例子,但我实际上是在处理一个更大的问题。
感谢。
答案 0 :(得分:1)
并且非常大,因此很难从函数到函数传递数据结构。
不,不是。 Python变量不起作用。你暗中得到一个指针。
答案 1 :(得分:0)
Python变量和函数参数始终只是对象的引用,因此不要担心将大型数据结构作为函数参数传递:不复制数据,只创建新引用。
但是,如果您知道您的代码将始终只处理数据结构的单个实例,则可以将其存储在全局变量中。您可以创建一个单独的模块,将数据加载到模块级变量中,并将该模块导入main.py和other_module.py。