我正在使用Config Parser指定变量列表,然后从较大的文件中提取这些变量的值。较大文件中的变量/行都如下所示:
callCount.1.cell=2
callCount.2.cell=10
callCount.3.cell=12
不是专门列出所有这些变量,而是能够使用'*'作为通配符代替数字,如下所示:
[variablesToPull]
callCount.*.cell
我无法更改我从中提取值的较大文件的格式,而且我并不总是知道变量之间的数字是什么。
编辑:我正在使用Python 2.7来完成所有的Config Parsing答案 0 :(得分:0)
环顾四周后,我认为不可能。我最终只在配置文件
中使用了所需变量名的第一部分[variablesToPull]
callCount
然后我从存储变量名称和值的完整列表的文件中创建了一个字典(以下所有代码都适用于Python 2.7,它可能适用于Python 3,但可能需要进行一些语法更改)
f = open(variable_names_and_values_file, 'r')
dict_of_vars= {}
for line in f:
k, v = line.strip().split('=')
dict_of_vars[k.strip()] = v.strip()
f.close()
然后我循环使用这个字典并创建了一个新的特定变量列表(如callCount.1.cell,callCount.2.cell,ect ......)
new_variables= []
for var in partial_variable_names_from_config_file:
for data in dict_of_vars:
if var in data:
new_variables.append(data)
最初我不想做太多的循环,因为害怕性能下降(我的变量文件有10000行),但它似乎没有让我的脚本减慢一个明显的数量。
希望这可以帮助那些人