在嵌入式系统中使用python配置解析器缓存以减少I/O
在我的项目中,我们使用一个配置文件,这个文件是通过configparser模块来解析的。请问有没有办法把整个配置文件缓存起来,然后用configparser的方法从内存中读取?我希望不必把配置变量存储在字典里再去查找,因为configparser和我们应用的很多部分紧密相连。我希望能简单地改变配置的位置,让它指向内存,而不是一个文件名。这样做可行吗?
1 个回答
4
没错。如果你使用 StringIO 模块,你可以创建一个在内存中的类似文件的对象。
然后你可以使用这个方法(ConfigParser 是从 RawConfigParser 继承来的):
RawConfigParser.readfp(fp[, filename])
从 fp 中的文件或类似文件的对象读取和解析配置数据(只使用 readline() 方法)。如果没有提供 filename,而 fp 有一个名称属性,那么就会使用这个名称作为文件名;默认值是 .。