Что такое «Pythonic» способ определить класс, которому не нужны параметры конструктора?
class MyClass:
# class body
или нам нужен явный конструктор? то есть
class MyClass:
def __init__:
pass
# class body
@Харша Почему...?
Создается ли экземпляр класса без ошибок, если вы полностью опускаете __init__? (Да, это так.) Тогда вы не нужно это.
@HarshaBiyani Метод __init__ требует как минимум self в качестве параметра, поскольку это метод экземпляра.
@deceze Достаточно честно. Я думал, что, возможно, «Явное лучше, чем неявное», как в PEP20 — The Zen of Python (python.org/dev/peps/pep-0020)
Явно опускать __init__ лучше, чем неявно состоять только из pass… ;)






Ваш первый подход достаточно хорош, если вы не хотите использовать только атрибуты класса, а не атрибуты экземпляра
Также каждый класс в Python наследуется от объекта, как подробно описано здесь
class MyClass:
pass
Примером таких классов может быть следующий
class MyClass:
a = 1
b = 2
print(MyClass.a)
#1
print(MyClass.b)
#2
class MyException(Exception):
pass
raise MyException
# raise MyException
#__main__.MyException
Может стоит привести пример? Например, настраиваемые типы исключений обычно определяются таким образом.
Спасибо, вы можете проверить мое обновление и посмотреть, имеют ли смысл два примера @AdamSmith :), и дайте мне знать
Второй.