TGViewer
Python Community Python Community @python_community_ru · 11.6K subscribers
Post #2589 1.03K
‍🖥 Задача (с подвохом). Какой результат выдаст этот код?

def extend_list(val, lst=[]):
lst.append(val)
return lst

# Первый вызов: используется список по умолчанию
list1 = extend_list(10)
# Второй вызов: передаём новый пустой список
list2 = extend_list(123, [])
# Третий вызов: снова используется список по умолчанию
list3 = extend_list('a')

print('list1 =', list1)
print('list2 =', list2)
print('list3 =', list3)

🧩 Объяснение

Как работает список по умолчанию
В объявлении функции lst=[] создаётся один список при определении функции, и он используется повторно во всех вызовах, где аргумент lst не передан.

Первый вызов

list1 = extend_list(10)
Параметр lst не передан → используется дефолтный список.

Добавляем 10.
В результате list1 становится [10].

Второй вызов

list2 = extend_list(123, [])
Передаём новый пустой список [].

В этот список добавляется 123.
В итоге list2 становится [123].

Третий вызов

list3 = extend_list('a')
Опять не передан lst → используется тот же дефолтный список, в который уже добавлен 10.

Добавляем 'a'.
Дефолтный список теперь [10, 'a'], и list3 ссылается на этот же список.

Окончательный вывод программы:

list1 = [10, 'a']
list2 = [123]
list3 = [10, 'a']

Обратите внимание, что list1 и list3 — это один и тот же дефолтный список, поэтому изменения сохраняются между вызовами.

@Python_Community_ru
  • 👍 7
More from @python_community_ru
  1. Oct 4, 2026🐍 Python тормозит? В 3.15 добавили инструмент, который покажет где Tachyon (`profiling.sa…
  2. Oct 2, 2026webAI выпустила TwIL-LM3-Pro - компактную модель на 3,66B параметров специально для формал…
  3. Oct 1, 2026🔥 Бесплатный курс по Claude Code на русском: от установки до команды агентов На GitHub вы…
  4. Sep 30, 2026🖥 Cayu - open-source runtime для долгоживущих ИИ-агентов на Python Проект закрывает инфра…
  5. Sep 29, 2026🖥 Примеры кода на Python 2026: лучшие практики, разбор и задачи с решениями Python пример…
  6. Sep 28, 2026🚀 Jina-OCR-v1 разбирает целые страницы в Markdown со скоростью 2,57 страницы/с Jina AI пр…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →