Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Python области видимости и организация кода
|
|||
|---|---|---|---|
|
#18+
Доброго времени, Изучаю Python потихоньку и как истинный ООПист не понимаю одного момента Код в Питоне организовывается в модулях, аналог пакетов в Джаве Но в Джаве, в пакетах, нельзя объявлять просто переменные вне рамках какого-то класса Получается, когда в Питоне импортируется пакет целиком, то мы получаем и доступ к этой "глобальной переменной пакета"? А вот интересует такой момент, если импортируем только класс из пакета, который использует эту переменную в пакете, то мы будем иметь доступ из вне и к этой переменной? Или её только класс сможет использовать? И в связи с этим такой вопрос, как в Питоне организовывают код? В Джаве +- 1 класс == 1 файл, все классы общей направленности - организовываются в пакеты А в Питоне как? 1 файл == 1 пакет и там внутри куча классов и тд? Или нет особых подходов и абы было просто, красиво и понятно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2015, 10:29 |
|
||
|
Python области видимости и организация кода
|
|||
|---|---|---|---|
|
#18+
1. >>>А в Питоне как? 1 файл == 1 пакет один файл == один модуль, модули объединяются в пакеты, пакеты могут объединяться в более объемлющие пакеты. 2. При первом импорте пакета в программе выполняется файл __init__.py пакета 3. При первом импорте модуля в программе выполняется весь код модуля 4. В питоне из модуля можно импортировать всё, а можно отдельные элементы 5. Возможность импортировать всё из модуля регулируется спец. переменной __all__ 6. При первом импорте класса выполняется метакласс класса и весь код вне методов. Cpt. Grayесли импортируем только класс из пакета, который использует эту переменную в пакете, то мы будем иметь доступ из вне и к этой переменной? А это как? Приведи пример кода, как через экземпляр класса получить переменную, определенную вне класса. Cpt. GrayПолучается, когда в Питоне импортируется пакет целиком, то мы получаем и доступ к этой "глобальной переменной пакета"? Если переменная определена в __init__ пакета, то да Если переменная определена в модуле, доступ к ней можно получить через точечную нотацию по имени модуля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2015, 11:38 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38968391&tid=1461751]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 258ms |
| total: | 449ms |

| 0 / 0 |
