![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
HellanD |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 443 Регистрация: 16.5.2006 Где: Киев Репутация: 1 Всего: 2 |
Подскажите если в обьект через конструктор подается переменная то для использования ее в другой функции данного класа необходимо использовать обращение self.varName???
|
|||
|
||||
HellanD |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 443 Регистрация: 16.5.2006 Где: Киев Репутация: 1 Всего: 2 |
почему если ввести такой код
Он пишет AttributeError: params instance has no attribute 'generated' |
|||
|
||||
J2A |
|
||||||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 171 Регистрация: 17.11.2005 Где: Омск Репутация: 16 Всего: 18 |
Зависит от того, как ты оформил конструктор. Если
то нет -- arg остается локальной переменной, определенной внутри метода __init__ Если ты делаешь так:
То attr - это атрибут, и во всех методах он будет доступен как self.attr, а вне класса -- как obj_foo.attr Еще можно сделать так:
то несмотря на то, что в конструкторе ты не определяешь метода attr, он также доступне как и в предыдущем примере. P.S. Если ты, конечно, под конструктором понимаешь __init__ а не __new__ Добавлено @ 13:18
Приведи полный код класса. И это... не обязательно приводить класс as is, достаточно указать важные моменты. Например, в вышеприведенном коде абсолютно не важно, каким образом получают значение Input*, Output*, важно, что в этом месте присваивается self.generated. P.S. Если я правильно понимаю, showParams - отдельный метод, а не внутренняя локальная функция метода generate. В этом случае, AttributeError будет, например, если showParams вызвана до вызова generate. Если после, то всё должно быть ОК (если, конечно, вызов метода generate заканчивается нормально, без вызова исключений). --------------------
Be easy, stay cool |
||||||||||
|
|||||||||||
HellanD |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 443 Регистрация: 16.5.2006 Где: Киев Репутация: 1 Всего: 2 |
|
|||
|
||||
setq |
|
|||
Unregistered |
HellanD, означает ли твой пост, что ты не разобрался?
|
|||
|
||||
HellanD |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 443 Регистрация: 16.5.2006 Где: Киев Репутация: 1 Всего: 2 |
Да хелп
Че єта чавсть кода не работает??
|
|||
|
||||
J2A |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 171 Регистрация: 17.11.2005 Где: Омск Репутация: 16 Всего: 18 |
Еще раз: если ты вызываешь showParams до того как вызываешь generate, то исключение AttributeError будет. По той простой причине, что атрибут generated ты определяешь только в generate. до вызова generate у тебя нет этого атрибута.
Поэтому, сделай паузу, минут 10 подумай... добавь self.generated='0' в __init__ Это сообщение отредактировал(а) J2A - 6.9.2006, 14:52 --------------------
Be easy, stay cool |
|||
|
||||
HellanD |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 443 Регистрация: 16.5.2006 Где: Киев Репутация: 1 Всего: 2 |
Странно конечно но помогло.... ![]() |
|||
|
||||
Cr@$h |
|
|||
![]() Исследователь ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1693 Регистрация: 3.4.2005 Где: Санкт-Петербург, Россия Репутация: 1 Всего: 41 |
|
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |