Почему это важно
В отличие от некоторых языков, Python не вызывает конструктор родителя автоматически. Если дочерний класс переопределяет __𝚒𝚗𝚒𝚝__, нужно явно вызвать 𝚜𝚞𝚙𝚎𝚛().__𝚒𝚗𝚒𝚝__(...), иначе инициализация родителя не произойдёт.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍4
Что выведет код?
Anonymous Quiz
28%
[[1, 2], [3, 4]]
61%
[[1, 2, 5], [3, 4]]
3%
[[1, 2], [3, 4, 5]]
8%
Error
❤3
Почему это важно
Для полного копирования вложенных структур нужен 𝚌𝚘𝚙𝚢.𝚍𝚎𝚎𝚙𝚌𝚘𝚙𝚢(). Поверхностная копия через 𝚕𝚒𝚜𝚝.𝚌𝚘𝚙𝚢(), 𝚕𝚒𝚜𝚝(...) или срез [:] — частый источник багов с «призрачными» изменениями в якобы независимых данных.
Please open Telegram to view this post
VIEW IN TELEGRAM
✍1