В чем разница между объектами и классами в Python - PullRequest
5 голосов
/ 20 сентября 2011

Я самодостаточный пользователь Python (вроде.).Я много читаю, чтобы углубить свои знания о питоне.Сегодня я натолкнулся на текст: «[...] классы и объекты [...]».Поэтому мне было интересно, в чем разница между объектами и классами в Python.Я думал, что все классы являются объектами, но в этом случае автор не использовал бы фразу «классы и объекты».Я в замешательстве ...

Ответы [ 5 ]

7 голосов
/ 20 сентября 2011

Это два тесно связанных термина в объектно-ориентированном программировании. Стандартное значение состоит в том, что объект является экземпляром класса .

2 голосов
/ 20 сентября 2011

Да, классы (и функции, и модули, и в основном все) в Python также являются объектами. Разница заключается в их типах:

class Foo(object): pass
print type(Foo)
print type(Foo())

Чтобы увидеть, что они оба объекта, вы можете проверить, что они оба имеют атрибуты:

print dir(Foo)
print dir(Foo())
2 голосов
/ 20 сентября 2011

Объект является экземпляром класса.

Думайте о классе, как о чертеже автомобиля.

Форд делает автомобили (объекты) на основе правил и информации, содержащейся вплан.

1 голос
/ 20 сентября 2011

Класс - это идея. Объект является плодом этой идеи.

0 голосов
/ 11 октября 2015

Класс описывает, каким будет этот объект, но это не сам объект.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...