Уведомления

Группа в Telegram: @pythonsu

#1 Март 9, 2017 21:51:56

Djo0513
Зарегистрирован: 2016-09-02
Сообщения: 92
Репутация: +  0  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

Насчё книги: никак не мооу найти по настоящему добротную книгу. Щас читаю Программирование на Python лутц, читаю про базы данных которые мне я уверен не пригодятся, в какой книге по настоящему учат программировать на python?



Лучший учитель - это ты сам.

Офлайн

#2 Март 9, 2017 22:04:14

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

Офлайн

#3 Март 9, 2017 23:11:36

4kpt_V
От: Харьков
Зарегистрирован: 2017-02-19
Сообщения: 299
Репутация: +  12  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

Djo0513
Я не такой тупой каким вы меня считаете, я знаю что self этт указатель на объект класса, и смысл ооп я понимаю

Вы задали вопрос новичка и на него соответственно среагировали. Не надо обижаться или иголки как ежик показывать. Во вторых еще по pep8 желательно все атрибуты объекта описывать в __init__. Поэтому атрибуты еще выполняют описательную роль. Кроме того существует такое понятие как инициализация. Там достаточно частая практика переопределения существующих атрибутов класса, которые определены в __init__ внутри какого нибудь init_app. Кроме того, self._имя служат для скрытия объектов внутри интерфейсов через property.

Отредактировано 4kpt_V (Март 9, 2017 23:12:41)

Офлайн

#4 Март 10, 2017 06:46:14

Djo0513
Зарегистрирован: 2016-09-02
Сообщения: 92
Репутация: +  0  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

4kpt_V
Когда я писал код на планшете - не думал об pep8. Я думал как бы вам сказать что я имею ввиду. Конструктор я понимаю, в следующий раз опишу объект в нём



Лучший учитель - это ты сам.

Офлайн

#5 Март 10, 2017 13:53:28

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

> в какой книге по настоящему учат программировать на python?

Нету таких книг. Пока не начнёшь сам что-то делать книги читать бесполезно.



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#6 Март 11, 2017 09:19:33

4kpt_V
От: Харьков
Зарегистрирован: 2017-02-19
Сообщения: 299
Репутация: +  12  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

Djo0513
Конструктор я понимаю, в следующий раз опишу объект в нём
В смысле? В python нет конструктора как понятия…

Офлайн

#7 Март 11, 2017 11:43:46

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

4kpt_V
ну это повод для разговорчиков, есть __new__ который кто то считает за конструктор, и есть __init__ который инициализатор.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#8 Март 11, 2017 11:52:05

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

JOHN_16
есть __new__ который кто то считает за конструктор
И на это есть все основания!



Офлайн

#9 Март 11, 2017 12:08:31

4kpt_V
От: Харьков
Зарегистрирован: 2017-02-19
Сообщения: 299
Репутация: +  12  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

Хорошо. Приведите пример других языков, где есть метод-инициализатор…

Офлайн

#10 Март 11, 2017 13:24:03

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Зачем писать self.name = name, а после использовать self.name вместо name?

4kpt_V
Хорошо. Приведите пример других языков, где есть метод-инициализатор…
1. ruby
2. Kotlin
3. А какое отношение это имеет к констуктору?



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version