我目前正致力於創建一個python線性代數模塊,以獲得有趣的語言練習。我最近嘗試類型註釋添加到模塊,因爲這樣的:未在類型註釋中定義的名稱
class Vector:
# Various irrelevant implementation details
def __add__(self, other: Vector) -> Vector:
# More implementation details....
然而,當我嘗試導入此,它吐出NameError: Name 'Vector' is not defined
。我承認這個問題已經以here的形式得到解答,但似乎並沒有完全爲我的情況提供答案。
我想知道些什麼:
- 我在這個文件的字面定義的類。爲什麼說這個名字沒有定義?
- 如何定義
Vector
以使其可用於註釋(作爲type
)?
請保留您的帖子限於每個帖子** 1個問題。在這裏你有兩個截然不同的問題,一個是關於你的循環依賴(類的方法取決於類創建之前的類),以及類型和類之間的區別。後者是重複的。 –
請參見[Class vs.輸入Python](https://stackoverflow.com/q/35958961),以查看我已從您的帖子中刪除的部分問題。 –
對不起。我認爲類型問題與手頭的問題有關。 – BHustus