我有一个脚本,可在csv文件中提取某些值,以将它们合并到几个yalm文件中,并放在这些文件中的某个位置。
import ruamel.yaml
from csv import reader
from ruamel.yaml import YAML
yaml = ruamel.yaml.YAML()
yaml.preserve_quotes = True
with open('config.yaml') as yml:
doc = yaml.load(yml)
with open('params.csv') as f:
for i, data in enumerate(reader(f)):
doc['components']['star']['init'][0]['values']['logg'] = data[4]
filename = data[1].split(".")[0]
with open(f'{filename}.yaml', 'w') as out:
yaml.dump(doc, out)
#break
如您所见,它将csv文件的一列中的值一个接一个地更改,在参考yaml文件中更改此值(logg)并保存,并针对每个值执行此操作,所以我结束了有几个Yaml文件。
问题是,当替换值时,而不是例如:
logg: 4.5
我得到:
logg: '4.5'
您是否有一个不需要''
的想法,因为我无法使其工作?
谢谢