Я только начинаю использовать движок Google для рекламы и искал хорошую практику и организацию кода. Большинство моих проблем связаны с путаницей __init__.py
.Как организовать код с __init__.py?
Моя текущая структура теста выглядит
/website
main.py
/pages
__init__.py #1
blog.py
hello2.py
hello.py
/sub
__init__.py #2
base.py
Я пытаюсь использовать main.py как файл, который просто указывает на все в/страниц и/страниц/суб. Большинство модулей в/страницах имеют почти все одинаковые импорты (например, import urllib), есть ли способ определить, что все в/pages импортирует то, что я хочу, а не добавляю его в каждый отдельный модуль?
В настоящее время в __init__.py
# 1 У меня есть
from sub.base import *
Еще мой модуль blog.py говорит BaseHandler (функция в base.py) не определено. Моя конечная цель иметь что-то вроде ...
main.py
from pages import *
#be able to call any function in /pages without having to do blog.func1() or hello.func2()
#rather just func1() and func2()
И чтобы иметь возможность совместно использовать общий импорт модулей в /pages
в __init__.py
. Чтобы они делили, например, urllib и все функции с base.py. Спасибо, что нашли время, чтобы прочитать это сообщение, я с нетерпением жду вашего понимания.
Элементы, импортированные в '__init__', также автоматически не доступны для модулей в одном пакете. Вам все равно придется явно импортировать «BaseHandler» там, где это необходимо, например, в blog.py. –