На основе отличного вопроса (и множества отличных ответов) из здесь.
Имеет ли значение утверждение «Код против интерфейса, а не объекта» в Python?
Я ищу для ответов, подобных тем, что в Исходном вопросе , но с фрагментами и мыслями Python.