Я столкнулся с некоторым поведением из Python 2.6.1, которое я не ожидал. Вот некоторый тривиальный код для воспроизведения проблемы:
---- ControlPointValue.py ------
class ControlPointValue:
def __init__(self):
pass
---- ControlPointValueSet.py ----
import ControlPointValue
---- main.py --------------------
from ControlPointValue import *
from ControlPointValueSet import *
val = ControlPointValue()
.... вот ошибка, которую я получаю при запуске main.py (под OS / X Snow Leopard, если это имеет значение):
jeremy-friesners-mac-pro-3:~ jaf$ python main.py
Traceback (most recent call last):
File "main.py", line 4, in <module>
val = ControlPointValue()
TypeError: 'module' object is not callable
Может кто-нибудь объяснить, что здесь происходит? Python запутывается, потому что имя класса совпадает с именем файла? Если да, то как лучше всего решить проблему? (Я бы предпочел, чтобы мои файлы Python были названы в честь классов, которые в них определены)
Спасибо,
Джереми