私はPythonを初めて使用します。グーグルで検索し、このためにSOを読んでいました。
私は持っています
pin.py:
from board import Board
class pin(object):
board_id = Int()
my_board = store.get(Board, board_id)
def __init__(self, val):
...
board.py:
from pin import Pin
class Board(object):
id = Int()
def __init__(self, val):
...
Board.pins = ReferenceSet(Board.id, Pin.board_id)
ご覧のとおり、他のクラスからピンとボードの両方にアクセスできる必要があります。私はここでやることだけimport pin
を見ましたimport board
。しかし、それを実行してから実行すると、board.Board
たとえばpin.Pin
pin.pyで、my_board = store.get(board.Board, board_id)
このエラーが発生します
AttributeError: 'module' object has no attribute 'Board'
上記のコードを使用した場合、これは発生しませんでしたが、循環インポートはありませんでした。
私の質問を明確にするために:
循環インポートを実行し、インポートされるファイルからクラスを呼び出すにはどうすればよいですか?