Я работаю с двумя файлами: construct\core.py
и USBtransport.py
.Ниже приведен соответствующий код из обоих файлов:
construct \ core.py:
class Range(Subconstruct):
__slots__ = ["min", "max"]
def __init__(self, min, max, subcon):
super(Range, self).__init__(subcon)
self.min = min
self.max = max
....
, где Subconstruct является подклассом Construct, которые оба были определены ранее в коде.
USBtransport.py:
from construct import Subconstruct
from construct import (
Bytes, Container, Embedded, Enum, ExprAdapter, Int16ul, Int32ul, Pass,
Struct, Range,
)
Я сталкиваюсь с этой ошибкой при попытке запустить USBtransport.py:
ImportError: cannot import name 'Range'
Я просматривал похожие сообщения об этой ошибке, и они кажутсявсе проистекает из кругового импорта.Однако я не думаю, что это проблема здесь, поскольку core.py
никогда не вызывает никаких классов из USBtransport.py
.Я также могу импортировать другие Subconstruct
объекты из core.py
без проблем.
Я также не думаю, что ошибка проистекает из кода внутри класса Range(Subconstruct)
, поскольку я получаю ту же ошибку, когда закомментирую весь код внутри и просто пытаюсь импортировать пустой класс.
Есть идеи?