3 回答

TA贡献1829条经验 获得超7个赞
当 python 执行脚本时,它会将脚本的目录包含在 python 路径中。这使得程序员可以轻松地为脚本提供自己的模块,而无需显式安装。此外,Python 并不将顶级脚本视为模块(或者更准确地说,它会将其命名为模块__main__
)。
在您的例子中,您将脚本命名为“tensorflow.py”。Python 执行脚本,当它看到 时import tensorflow
,它会导入您的模块,而不是真正的tensorflow
包。由于它还没有命名的模块tensorflow
(原来的模块是__main__
),它再次执行该文件并import tensorflow
再次看到该文件,但同样,它仍然是相同的tensorflow.py
. 这种情况可能会永远持续下去,但 python 会检测到循环导入并发出您看到的错误。
可惜python竟然这么做了。它使部署模块和包变得更容易,但它有点脆弱。您必须确保您的 .py 文件名不会与 python 安装中可能显示的任何内容发生冲突。
解决办法就是重命名C:\Users\Anush\Desktop\tensorflow.py
。并且不要将其命名为与您可能安装的任何 python 包相同的名称。

TA贡献1765条经验 获得超5个赞
就我而言,我只需将当前脚本名称从code.py重命名为testing.py。然后就可以完美运行了。
怀疑相同的code.py文件名位于导入张量流库内,导致此循环导入错误。
添加回答
举报