powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Объекты из __init__ не видны в модулях пакета. Так задумано?
8 сообщений из 8, страница 1 из 1
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39767093
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хочу сделать различные пакеты максимально независимыми, поэтому решил в каждом из них использовать файл __init__ для указания общей для пакета специфики (константы, общие объекты....).

Но мне приходится писать смешной код в духе:
Код: python
1.
from Database.Tables import __init__ as init



Неужели нельзя в пакете использовать его объекты из файла инициализации без дополнительных плясок с бубном?
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39768931
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Разместил глобальные переменные в __init__ для каждого пакета. Теперь при попытке обращения к этим атрибутам получаю ошибку:
Код: plaintext
AttributeError: 'method-wrapper' object has no attribute 'FormsDirectory'

В файле __init__ пакета Forms присутствует единственная строка:
Код: python
1.
FormsDirectory = '/home/alesha/eclipse-workspace/AnalysisData/Forms/'



В другом файле (где хочу использовать эту переменную):
Код: python
1.
2.
3.
from Forms import __init__ as MyForms

d = MyForms.FormsDirectory // ТУТ ОШИБКА !!!



Посмотрел в отладчике: действительно переменная MyForms имеет тип method-wrapper и никаких переменных у нее нет... Что за хрень? Ведь это обычный модуль!
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769037
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQL,

Алексей, когда вы уже наконец перестанете маяться дурью и прочитаете хоть какой-нибудь учебник по питону?
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769056
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Лысый дядькаAlekseySQL,

Алексей, когда вы уже наконец перестанете маяться дурью и прочитаете хоть какой-нибудь учебник по питону?

Напишите, пожалуйста, учебник, в котором рассмотрен именно этот вопрос.
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769062
AlekseySQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, оказывается с __init__ надо делать так:

Код: python
1.
2.
import Forms
d = Forms.FormsDirectory
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769070
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLНапишите, пожалуйста, учебник, в котором рассмотрен именно этот вопрос.
В любом учебнике подробно рассмотрен этот вопрос. Вы же ни одного не читали. Вам лень или вы слегка туповаты?
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769071
Лысый дядька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLВсем спасибо, оказывается с __init__ надо делать так:

Оказывается!!! Вот это открытие!
...
Рейтинг: 0 / 0
Объекты из __init__ не видны в модулях пакета. Так задумано?
    #39769075
Фотография NekZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlekseySQLВсем спасибо, оказывается с __init__ надо делать так:

Код: python
1.
2.
import Forms
d = Forms.FormsDirectory


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


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