我正在使用 Py 3.7 并尝试使用来自typing_extensions 的 Final 和 final,但这些并没有停止重新分配或重载或继承

问题描述

enter image description here

我正在使用 Py 3.7 并尝试使用来自typing_extensions 的 Final 和 final,但这些并没有停止重新分配、重载或继承

解决方法

正如此回复中所述:https://stackoverflow.com/a/33316370/11096524,python 在运行时不执行类型检查。这篇文章是关于变量类型的,但我认为这同样适用于最终的类型扩展。

实际上,我使用打字只是为了干净的代码;由于注释,我从未遇到任何运行时错误。只有在某些 IDE(例如 PyCharm)中,如果我使用的类型与注释所声明的类型不同,我才能看到警告。

从我上面分享的帖子中,我假设您可以使用这些注释并实现您自己的自定义类型检查,在您的情况下检查运行时是否未重新分配最终变量等。