Что выведет этот код?

print(0 or "" or [])


Задача проверяет знание логических операторов or и особенностей приведения типов в Python.

Оператор or возвращает первый аргумент, если он приводится к True. В противном случае возвращается второй аргумент.

В Python следующие значения приводятся к False в логическом контексте:

  • False
  • None
  • Числовые нули (0, 0.0, 0j)
  • Пустые последовательности ("", [], ())
  • Пустые отображения ({})

В данном случае:

  1. 0 or "": 0 приводится к False, поэтому возвращается "".
  2. "" or []: "" приводится к False, поэтому возвращается [].

Таким образом, выражение 0 or "" or [] вернет [] (пустой список).

Вывод: []

0