Книга: Марк Лутц - Изучаем Python, 5-е изд., Т. 2
Назад: 4
Дальше: 6

5

На самом деле это одна из причин, по которым аргумент self обязан всегда явно присутствовать в методах Python — поскольку методы могут создаваться как простые функции, независимые от класса, они должны делать явным аргумент подразумеваемого экземпляра. Их можно вызывать либо как функции, либо как методы, и Python не может ни угадать, ни предположить о том, что простая функция в конечном итоге станет методом класса. Однако главная причина явного указания аргумента self заключается в том, чтобы сделать смысл имен более очевидным. Имена, на которые производится ссылка через self, представляют собой простые переменные, отображаемые на области видимости, тогда как имена, на которые ссылаются через self с помощью записи атрибутов, совершенно ясно являются атрибутами экземпляра.
Назад: 4
Дальше: 6