У меня есть файл yaml, который выглядит следующим образом:
grids:
phxgrid:
class: spexxy.grid.FilesGrid
filename: /home/geoffrey/Bureau/husser_interpolator/grid.csv
interpolators:
phx:
class: spexxy.interpolator.SplineInterpolator
grid: phxgrid
derivs: phxgrid
components:
star:
class: spexxy.component.GridComponent
interpolator: phx
init:
- class:
values:
logg: 4.0
Alpha: 0.
v: 0
sig: 0
main:
class: spexxy.main.ParamsFit
components: [star]
fixparams:
star: [sig, Alpha, logg]
Из файла CSV я должен прочитать параметр в столбце, который я уже знаю, как сделать, и вставить его в файл yaml в строку logg: 4.0
, например, переключив 4.0 на 3.2, и сохраните файл yaml для каждого значения.
Знаете ли вы, как это сделать? Спасибо
РЕДАКТИРОВАТЬ:
Итак, пока у меня есть это:
import csv
import yaml
from csv import reader
with open('params.csv', 'r') as f:
data = list(reader(f))
logg_list = [i[6] for i in data[1::]]
with open('config.yaml', 'rw') as ymlfile:
doc = yaml.load(ymlfile)
for logg in logg_list:
doc['logg'] = logg[i]
yaml.dump(doc,ymlfile)
Но это ничего не меняет, и я не уверен насчет сохранения части так как я должен получить много yaml-файлов с разными значениями logg, и я хотел бы назвать действительные файлы в результате