Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 22, 2009 18:08:45

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

не совсем понятно

vaxXxa
Смотри.. у тебя есть группа в университете. Это класс… он состоит из экземпляров (это ты, Петя, Вася, Лена)…
Бред какой-то.

Если есть класс группы, то экземпляры - это группа “ГР-1”, “ГР-2”, и т.д.
А Вася, Петя, Коля,, … - экземпляры класса “Студент”.

P. S.
В этом случае группа скорее контейнер, но это уже не сюда…



Отредактировано (Окт. 22, 2009 18:09:09)

Офлайн

#2 Окт. 22, 2009 18:09:57

pasaranax
От:
Зарегистрирован: 2009-06-13
Сообщения: 574
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

Надо почитать какую-нибудь книжку или хотя бы статью про ООП, если такие базовые вещи непонятны



Отредактировано (Окт. 22, 2009 18:10:13)

Офлайн

#3 Окт. 22, 2009 18:53:20

ZioN
От:
Зарегистрирован: 2007-07-12
Сообщения: 50
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

regall
self - это обращение к созданному екземпляру класса.
Да собственно это обычная “переменная”. :)

>>> class My:
... x = 1
... def get(mymy):
... print mymy.x
...
>>> m = My()
>>> m.get()
1



Офлайн

#4 Окт. 22, 2009 19:17:27

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

не совсем понятно

ZioN
Ну и где в примере иллюстрация того, что self - “переменная”?

Топикстартеру - читать литературу по ООП вообще и http://www.intuit.ru/department/pl/python/4/ в частности до полного просветления.

Офлайн

#5 Окт. 22, 2009 20:00:23

vaxXxa
От: Kyiv, Ukraine
Зарегистрирован: 2009-06-16
Сообщения: 278
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

> А Вася, Петя, Коля,, … - экземпляры класса “Студент”.
согласен. Не то чуток написал))



Офлайн

#6 Окт. 22, 2009 20:23:17

Malinaizer
От:
Зарегистрирован: 2009-03-28
Сообщения: 133
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

GDK
Нет немного не так.

К примеру есть класс ААА. У него есть аттрибут(переменная, поле …. кто как называет) myAttr. И у него же есть метод useMeth, который должен при вызове изменить параметр myAttr. Как это сделать?


class AAA ():
myAttr="Empty"
## def __init__(self):
## self.myAttr = "__init__: Not Empty"
def useMeth(self):
self.myAttr= "useMeth: Not Empty"



"Пробуем использовать"

Var=AAA()

print(Var.myAttr)

Var.useMeth()

print(Var.myAttr)
Сначала пробуй запустить как есть, потом раскомментируй метод инит. Поймёшь зачем она нужна. Автоматически она вызывается при выполнении Var=AAA().

До Питона никогда не пробовал кодить наверное.
спасибо начал вроде понимать!



Офлайн

#7 Окт. 22, 2009 21:16:08

ZioN
От:
Зарегистрирован: 2007-07-12
Сообщения: 50
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

Ferroman
ZioN
Ну и где в примере иллюстрация того, что self - “переменная”?
В том месте где ее нет.



Офлайн

#8 Окт. 23, 2009 10:01:46

GDK
От:
Зарегистрирован: 2009-08-21
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

Быстрее всего почему-то понимание приходит при разборках с примерами.



Офлайн

#9 Окт. 23, 2009 10:03:39

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

не совсем понятно

GDK
Быстрее всего почему-то понимание приходит при разборках с примерами.
Естественно, вообще-то так и надо делать, попробовать, поковырать, согнать с моска семь потов, а потом уже спрашивать =)



Офлайн

#10 Окт. 23, 2009 10:12:32

GDK
От:
Зарегистрирован: 2009-08-21
Сообщения: 68
Репутация: +  0  -
Профиль   Отправить e-mail  

не совсем понятно

Не всегда. Профи здесь разок говорили что сначала надо читать документацию, потом всякие F1, и только потом примеры.
Только бывает ищешь мучаешься хрен знает сколько, а оказывается что всё уже есть и намного лучше и отточеннее. У меня так с портабельным питоном было и с wxPython.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version