python, аргументы класса |
Здравствуйте, гость ( Вход | Регистрация )
python, аргументы класса |
poluna |
21.12.2015, 14:37
Сообщение
#1
|
Студент Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0 |
Есть классы:
Я могу перечислить все аргументы класса SimplePacket: Вопрос, как сопоставить аргумент объекта SimplePacket с аргументом класса SimpleView?Даже если допустить, что у них имена одинаковые, без нижних подчеркиваний? |
|
|
lanz |
21.12.2015, 15:04
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Аргументы, вы имеете ввиду аттрибуты?
Раскрывающийся текст Вообще гугл выдает только http://rtfm.co.ua/python-klassy-kratkij-ob...import-klassov/ при поиске по словам "аргументы классов". Но такое использование вообще первый раз вижу, если не затруднит скинте ссылку на определение аттрибутов как аргументов? Cопоставить что значит? Приравнять(assign)? |
|
|
poluna |
21.12.2015, 15:24
Сообщение
#3
|
Студент Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0 |
На да, путаюсь с формулировками, мне нужно такое приведение:
Но в данном коде выдается ошибка:Цитата TypeError: 'type' object has no attribute '__getitem__' Это мне нужно, чтобы не писать кучу строк вроде:
|
|
|
lanz |
21.12.2015, 15:44
Сообщение
#4
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Интерпретатор говорит что объект типа "тип" нельзя использовать как dict (и он прав, нет метода __getitem__ )
Либо используйте __dict__, либо getattr
Вообще я не гуру питона, но не лучше ли использовать списки, кортежи или те же самые словари? |
|
|
poluna |
21.12.2015, 16:16
Сообщение
#5
|
Студент Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0 |
Блин, вот дура! Туплю на такой ерунде!
Нет, не лучше, у меня есть много классов вид, и классов пакет, я не знаю в какой момент и что придет, а в них в свою очереь полно полей aka аргументы - атрибуты класса. И по природной лени не хочется описывать и связывать эти много всего друг с другом, да и если добавится дополнительный аргумент, то придется все места где он используется проверять. А тут нужно добавить поля в вид и пакет и наслаждаться! |
|
|
lanz |
21.12.2015, 16:36
Сообщение
#6
|
Старейший участник Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: 8 |
Цитата и наслаждаться! А кто мешает наслаждаться используя dict?
Просто непонятно почему именно аттрибуты класса а не ключи в словаре. |
|
|
poluna |
21.12.2015, 16:51
Сообщение
#7
|
Студент Группа: Участник Сообщений: 27 Регистрация: 5.10.2015 Пользователь №: 4458 Спасибо сказали: 1 раз(а) Репутация: 0 |
Ну, как-то так исторически сложилось!
|
|
|
Текстовая версия | Сейчас: 22.11.2024, 0:30 |