无法导入烧瓶pycharm

时间:2020-07-28 06:36:14

标签: python flask

from flask import Flask

app = Flask(__main__)

if __name__ == "__main__":
    app.run()

如果我运行此命令,则会收到以下错误代码:

ImportError: cannot import name 'Flask' from partially initialized module 'flask' (most likely due to a circular import)

有人知道如何解决此问题吗?

2 个答案:

答案 0 :(得分:2)

当您导入与python脚本名称相同的模块名称时,发生循环导入错误。重命名您的文件以解决该问题,切勿使用模块名作为文件名。

答案 1 :(得分:2)

由于循环导入,您正面临此问题。

Python导入模块时,它将检查模块注册表以查看模块是否已导入。如果模块已经注册,Python将使用缓存中的现有对象。模块注册表是已通过模块名称初始化和索引的模块表。可以通过sys.modules访问该表。

如果尚未注册,Python会找到该模块,并在必要时对其进行初始化,然后在新模块的名称空间中执行该模块。

在您的情况下,您要在名为flask的脚本中导入模块flask。重命名文件名应该可以解决您的问题。

要了解有关循环导入的更多信息,请阅读以下文章:

https://stackabuse.com/python-circular-imports/

https://www.stefaanlippens.net/circular-imports-type-hints-python.html