Я новичок в Python, поэтому, пожалуйста, несите меня. Я пытаюсь выяснить, как цикл через набор значений в файле YAML. Файл анализируется с использованием PyYAML, а затем его необходимо вводить в цикл. Вот некоторые YAML, например:Условный Python для цикла на основе данных YAML
dohicky.yml
---
#Example file
dohicky:
"1":
Stuff:
- Data
- Data
Morestuff:
- Data
- Data
"2":
Stuff:
- Data
- Data
Morestuff:
- Data
- Data
"n":
- Etc
Во-первых, я потянув содержимое YAML из.
import yaml
f = open('dohicky.yml')
dohicky = yaml.safe_load(f)
f.close()
Теперь мне просто нужно либо цикл или время цикла перебора каждого пронумерованный «ID» под «dohicky».
for x in xrange(1, 2):
Очевидно, что это сработает, но статически определено только для двух элементов. Не знаю, как, например:
"do while" id = dohicky["dohicky"]["x"] is true. #Not code, just concept!
Другая проблема, с которой я немедленно сталкиваюсь, заключается в том, как создать объект внутри этого цикла. Например:
id(x) = dohicky(Pass other info from YAML to class) #Not code, just concept!
К сожалению, я не достаточно хорошо знаком с Python еще (withPyYAML), чтобы понять синтаксис. Любая помощь высоко ценится!
* ОБНОВЛЕНИЕ * Это своего рода код sudo, но вы должны понимать, что я пытаюсь сделать как минимум.
import yaml
f = open('dohicky.yml')
dohicky = yaml.safe_load(f)
f.close()
for x in dohicky["dohicky"]["x"]
test = dohicky["dohicky"]["1"]["Stuff"]
print test
В этом тесте я просто напечатав выход «штучек», но на самом деле, мне нужно создать объект, используя эти данные.
вы пробовали 'for x in dohicky: '? – Will