Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 21, 2019 18:39:29

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

конструктор в python

привет
объясните пожалуйста, как это работает?

 class foo:
     name=NONE
   def add(arg, toarg):
             arg.name=toarg//  вот тут не пойму, как работает. почему аргумент метода  может выступать как объект .вообще что есть arg?
obj=foo()

Отредактировано pythonmaks (Фев. 21, 2019 20:26:11)

Офлайн

#2 Фев. 21, 2019 18:54:13

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

конструктор в python

  class foo:
     name=NONE
     def add(self, toarg):
             self.name=toarg
obj=foo()
потому как arg это тот же self
В методах класса первый параметр функции по соглашению именуют self, и это ссылка на сам объект этого класса. Но это именно соглашение. Вы вольны называть параметры как угодно

Отредактировано marvellik (Фев. 21, 2019 18:55:00)

Офлайн

#3 Фев. 21, 2019 20:30:07

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

конструктор в python

блин, метод конечно же
скажите пожалуйста, а указатели есть в python?

Офлайн

#4 Фев. 21, 2019 21:29:42

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

конструктор в python

pythonmaks
скажите пожалуйста, а указатели есть в python?
ну как сказать, тут вроде как все указатели… переменная всего лишь ссылаеться на обьект в памятти, все остальное храниться в самом обьекте.
В Python есть изменяемые( mutable) и неизменяемые(immutable) типы. Изменяемые отличаются тем, что их содержимое можно изменить, не изменив ссылку на них. Неизменяемые объекты приходится пересоздавать, чтобы отразить изменения состояния, по сутипросто создаеться новый обьект и переменная ссылаеться уже на него. Списки, словари, множества - это изменяемые объекты. Числа, строки, кортежи - это неизменяемые объекты.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Фев. 21, 2019 21:32:56)

Офлайн

#5 Фев. 22, 2019 08:40:20

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

конструктор в python

спасибо

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version