Задать вопрос
@organica

Как добраться до элементов вложенных списков через цикл?

Только начал изучать python, помогите разобраться пожалуйста.Всю голову сломал, не могу дойти до, кажется, простой вещи. Исходные данные следующие:
person = 3
cook_book = [
    ['салат',
     [
         ['картофель', 100, 'гр.'],
         ['морковь', 50, 'гр.'],
         ['огурцы', 50, 'гр.'],
         ['горошек', 30, 'гр.'],
         ['майонез', 70, 'мл.'],
     ]
     ],
    ['пицца',
     [
         ['сыр', 50, 'гр.'],
         ['томаты', 50, 'гр.'],
         ['тесто', 100, 'гр.'],
         ['бекон', 30, 'гр.'],
         ['колбаса', 30, 'гр.'],
         ['грибы', 20, 'гр.'],
     ],
     ],
    ['фруктовый десерт',
     [
         ['хурма', 60, 'гр.'],
         ['киви', 60, 'гр.'],
         ['творог', 60, 'гр.'],
         ['сахар', 10, 'гр.'],
         ['мед', 50, 'мл.'],
     ]
     ]
]

Задача вывести список вида:
Салат:
картофель, 500гр.
морковь, 250гр.
огурцы, 250гр.
горошек, 150гр.
майонез, 350мл.
и т.д. Исходя из количества person.
Пересмотрел кучу видео по вложенным спискам, дальше двумерных никто не ушел. Как быть с [1] элементом(граммовка) последнего вложенного списка (4 уровень )при каждой итерации через for?
  • Вопрос задан
  • 450 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
0xD34F
@0xD34F
for (name, items) in cook_book:
  print('\n%s:' % name.capitalize())
  for (ingredient, quantity, unit) in items:
    print('%s, %d %s' % (ingredient, quantity * person, unit))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы