необходимость явно передавать ссылку на объект "класса" (self) в качестве аргумента функции
Нет, не надо. В питоне это все происходит автоматов. При вызове car.drive() будет вызван метод `def drive(self)` у класса car
Синтаксис с объявлением типа возвращаемого значения и тела метода очень удивил
Такой синтаксис используется в питоне уже очень давно, как минимум, с 2014 года.
А вот эти двойные подчёркивания в функциях нахрена?
Потому что это специальные функции, чтобы в коде можно было пользоваться `p1 + p2`, `p1 < p2`. Вам никто не запрещает объявить функцию less, но тогда ею нужно будет пользоваться как p1.less(p2)
2. рекомендую прочитать pep, где приведен вполне понятная (на мой взгляд) мотивация использования только позиционных аргументов. А также пример, как ужасно приходилось это реализовывать раньше вручную — www.python.org/dev/peps/pep-0570
4. начиная с 3.7, ключи в словаре упорядочены по порядку добавления — stackoverflow.com/questions/39980323/are-dictionaries-ordered-in-python-3-6.
Соответственно, обратный порядок тоже может быть полезен
А можно какую-то информацию про запрет, пожалуйста? Нашел только про Норвегию, но может в других странах также запрещено?
Нет, не надо. В питоне это все происходит автоматов. При вызове
car.drive()
будет вызван метод `def drive(self)` у класса carТакой синтаксис используется в питоне уже очень давно, как минимум, с 2014 года.
Потому что это специальные функции, чтобы в коде можно было пользоваться `p1 + p2`, `p1 < p2`. Вам никто не запрещает объявить функцию
less
, но тогда ею нужно будет пользоваться какp1.less(p2)
4. начиная с 3.7, ключи в словаре упорядочены по порядку добавления — stackoverflow.com/questions/39980323/are-dictionaries-ordered-in-python-3-6.
Соответственно, обратный порядок тоже может быть полезен