powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как динамически создавать классы / функции в модуле?
4 сообщений из 4, страница 1 из 1
Как динамически создавать классы / функции в модуле?
    #39748059
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть десяток однотипных классов (классы, создающие однотипные таблицы в БД). Хочется не заниматься копи- пастом, а запустить цикл, который в пространстве имен модуля создаст нужные мне классы.

Тоже касается и функций модуля: для реализаци паттерна Синглтон я использую функцию модуля с ее атрибутом (Саммерфилд, "Python на практике", стр 38). Нужно как-то программно в несколько модулей добавить один и тот же код (причем его нельзя заключить в процедуре общего модуля, потому что разные синглтоны должны инициализировать свои атрибуты).

Примерно представляю как это сделать (надо обращаться к словарю переменных модуля и туда добавлять нужные классы / функции), но конкретный пример позволит не изобретать велосипед.
...
Рейтинг: 0 / 0
Как динамически создавать классы / функции в модуле?
    #39748081
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLУ меня есть десяток однотипных классов (классы, создающие однотипные таблицы в БД). Хочется не заниматься копи- пастом, а запустить цикл, который в пространстве имен модуля создаст нужные мне классы.

Смотри type(name, bases, dict)
...
Рейтинг: 0 / 0
Как динамически создавать классы / функции в модуле?
    #39748087
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
NekZAlekseySQLУ меня есть десяток однотипных классов (классы, создающие однотипные таблицы в БД). Хочется не заниматься копи- пастом, а запустить цикл, который в пространстве имен модуля создаст нужные мне классы.

Смотри type(name, bases, dict)

Ну это понятно, вопрос в том, как полученный с помощью type объект положить в модуль.
...
Рейтинг: 0 / 0
Как динамически создавать классы / функции в модуле?
    #39748098
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLNekZпропущено...

Смотри type(name, bases, dict)

Ну это понятно, вопрос в том, как полученный с помощью type объект положить в модуль.
Подозреваю что
Код: python
1.
setattr(sys.modules[__name__], 'MyType', type(...))


Но это извращение. Потом поддерживать и дебажить это будет очень весело.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как динамически создавать классы / функции в модуле?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]