Уведомления

Группа в Telegram: @pythonsu

#1 Март 14, 2015 12:41:52

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

PyCharm и импорт модулей

Какого чёрта __init__ делает за пределами класса?



Офлайн

#2 Март 14, 2015 12:43:30

alex925
Зарегистрирован: 2015-01-08
Сообщения: 204
Репутация: +  14  -
Профиль   Отправить e-mail  

PyCharm и импорт модулей

Да, я про отступы (по правильному это называется уровни вложенности кода).
В соответствии синтаксису python у тебя сейчас класс Document не содержит ни одного метода, только 2 атрибута.

P.S Ты лезишь слишком глубоко, это не для твоего уровня. Скачай лучше книжку Лутца “Изучаем python” читай её тренируйся на простых примерчиках.

Офлайн

#3 Март 14, 2015 12:49:29

Yana
От: Мурманск
Зарегистрирован: 2015-03-07
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

PyCharm и импорт модулей

Да я уже и Лутца, и Доусона, и Саммерфилда книги читала. И Прохорёнка.
И посмотрела полный курс уроков от Бовсуновского.
И чего я только не смотрела.


Буду снова вникать в теорию и пробовать на более простых примерах.
Спасибо большое за помощь и совет

Офлайн

#4 Март 14, 2015 12:53:50

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

PyCharm и импорт модулей

Yana
Да я уже и Лутца, и Доусона, и Саммерфилда книги читала. И Прохорёнка.
И посмотрела полный курс уроков от Бовсуновского.
И чего я только не смотрела.
И толку? Ни капли понимания прочитанного материала.
Можешь на пальцах объяснить зачем нужен метод __init__?



Офлайн

#5 Март 14, 2015 14:00:49

Yana
От: Мурманск
Зарегистрирован: 2015-03-07
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

PyCharm и импорт модулей

__init__ это специальный метод, так называемый конструктор, который инициализирует атрибуты класса. Задает им начальное состояние.

Офлайн

#6 Март 14, 2015 14:11:32

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

PyCharm и импорт модулей

Yana
__init__ это специальный метод, так называемый конструктор, который инициализирует атрибуты класса. Задает им начальное состояние.

Браво! Почти правильно. А теперь, пожалуйста, приведи минимальный пример класса с методом __init__.



Офлайн

#7 Март 14, 2015 14:21:20

Yana
От: Мурманск
Зарегистрирован: 2015-03-07
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

PyCharm и импорт модулей

Вот так

class Books(object):
    def __init__(self, name, publishing_house):
        self.name = name
        self.publishing_house = publishing_house
    def what_book(self):
        print ('Книга {0} от издательства {1}'.format(self.name, self.publishing_house))

Офлайн

#8 Март 14, 2015 14:27:33

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

PyCharm и импорт модулей

Великолепно.
Вы готовы сказать, что не так с кодом, который вы нам показали ранее?



Офлайн

#9 Март 14, 2015 14:36:15

Yana
От: Мурманск
Зарегистрирован: 2015-03-07
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

PyCharm и импорт модулей

Я не инициализировала такие атрибуты, как new и status_allowed ?
Но я же задала им начальные значения. Ведь эти атрибуты не являются локальными.
Метод, работающий с этими атрибутами находится перед объявлением класса.
Мне лишь надо присвоить атрибуту класса значение атрибута new.

Поймите, если бы я знала ответ, наверно я бы сюда не пришла.
В уроке написано абсолютно так же, как я показала вам ранее, но при этом в уроках программа работает, а у меня выдаёт ошибку.

Офлайн

#10 Март 14, 2015 15:03:14

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

PyCharm и импорт модулей

Беседа принимает характер обсурда, учитывая заявления автора топика о куче прочитанной литературы по питону. Упрощаю вопрос, чем отличаются эти два куска кода?




Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version