заставляя pyYAML постоянно сбрасывать

In [136]: a = [1,2,3,4,5]

In [137]: print yaml.dump(a)
[1, 2, 3, 4, 5]


In [138]: a = [1,2,3,4,5, [1,2,3]]

In [139]: print yaml.dump(a)
- 1
- 2
- 3
- 4
- 5
- [1, 2, 3]

почему выходы выше двухdumps разные? Можно ли заставитьpyYAML разделитьlist всегда?

 Thierry Lam24 дек. 2012 г., 20:09
Как вы ожидаете, что результат будет выглядеть? Соответствующий дамп этого списка Python выглядит хорошо в формате yaml.

Ответы на вопрос(1)

Решение Вопроса

Отдокументация:

print yaml.dump(a, default_flow_style=False)

Значение может быть,TrueFalse, или жеNone, ЕслиNone или неопределенный (то есть по умолчанию), он автоматически выбирает, использовать ли встроенный или блочный вывод.False никогда не использует inline,True всегда в строке.

 DSM24 дек. 2012 г., 20:11
Ага. Как говорится в первой записи FAQ:По умолчанию PyYAML выбирает стиль коллекции в зависимости от того, имеет ли он вложенные коллекции. Если коллекция имеет вложенные коллекции, ей будет назначен стиль блока. В противном случае у него будет стиль потока. "

Ваш ответ на вопрос