Добавить данные в словарь

Не могу завершить задачу в Hyperskill...

Есть пустой словарь ирисов, в него надо добавить содержимое о видах с помощью функции.

Обязательные параметры на входе функции id_n, species, petal_length и petal_width, могут быть и дополнительные параметры.

Например, после первого вызова функции add_iris(0, 'Iris versicolor', 4.0, 1.3, petal_hue='pale lilac') словарь iris будет выглядеть следующим образом

{0: {'species': 'Iris versicolor', 'petal_length': 4.0, 'petal_width': 1.3, 'petal_hue': 'pale lilac'}}

Вот моя функция:

def add_iris(id_n, species, petal_length, petal_width, **kwargs):
    flower = {id_n:
                 {'species': species,
                  'petal_length': petal_length,
                  'petal_width': petal_width,
                 }
             }
    if kwargs:
        for key, value in kwargs.items():
            flower[id_n].update({key: value})
    iris.update(flower)
    return iris

тестовые даные таковы: 0 Iris_virginica 4.601842275930201 0.49692223898863797

вывод следущий: {0: {'species': 'Iris_virginica', 'petal_length': 4.601842275930201, 'petal_width': 0.49692223898863797}}

вывод для примера из условия: {0: {'species': 'Iris versicolor', 'petal_length': 4.0, 'petal_width': 1.3, 'petal_hue': 'pale lilac'}}

Что не так в результате работы моей функции? Может ее можно подругому написать (мне другие идеи в голову не идут)?


Ответы (0 шт):