У меня есть маленький тестовый проектик, чтобы понять, как импортируются в Питоне (3.4.1 x64 under Win7) файлы из пакета.
Итак, main.py:
from my_lib import a va=a.TClassA()
В подапке my_lib есть
__init__.py (пусто),
a.py:
from b import TClassB class TClassA(TClassB): def __init__(self): super().__init__() print ('A created')
и b.py:
class TClassB: def __init__(self): print ('B created')
Далее, при попытке выполнить main.py получаю:
Traceback (most recent call last):
File “D:\work\test\main.py”, line 1, in <module>
from my_lib import a
File “D:\work\test\my_lib\a.py”, line 1, in <module>
from b import TClassB
ImportError: No module named ‘b’
Что за ерунда? Почему a.py не видит b.py, ведь они в одной папке?