Содержание неточно скопировано.
Итак, если исходный dict
содержит list
или другой dictionary
, изменяя один из них в оригинале или его мелкой копии изменят их (list
или dict
) в другом.
Проблема заключается в выражении return
, которое завершит вызов функции и передаст результат туда, откуда он был вызван. Функция может когда-либо return
значения только один раз за вызов. Если вы хотите, чтобы функция продолжалась, вы можете либо собрать свои переменные и вернуть их в конце, либо использовать ключевое слово yield
, которое будет возвращать значение при каждом нажатии этой строки.