在Python模块中共享数据

时间:2015-06-14 20:06:02

标签: python module

我编写了一些Python库并将它们组织为一个模块。模块中的所有文件都需要文本文件中的某些数据才能工作。最简单的解决方案是让每个库在需要时读取文件。但是,多次读取同一文件似乎效率低下。 我更喜欢只读一次文件,并在不同的库之间共享这些数据。我可以编写一个额外的库来在初始化时读取数据并将其存储在全局变量中,因此之后可以由其他库导入。 虽然这可行,但我仍然认为这个解决方案不是最优雅的。这种问题有什么最好的做法吗?

2 个答案:

答案 0 :(得分:0)

由于它应该在模块中共同使用,因此应该在包中创建一个名为constants的文件,并在其中初始化包含文件内容的变量。作为事后的想法,包的init文件也是这种数据的良好候选者。

答案 1 :(得分:0)

如果它是一个配置你也可以在python中重写它并且做一些软件(例如:django)。 Django的配置位于名为settings.py的文件中。 您可以使用以下内容导入它:

from django.conf import settings

您可以使用settings.some_variable来使用内容。

我希望它会有所帮助。