在 Spyder 中运行脚本时无法导入我自己的模块

Hen*_*rra 2 python python-3.x spyder

根据官方 Python 文档这篇文章,将自己的模块导入脚本非常容易。基本上我只需要创建我的 .py 文件,将它们保存在一个目录中,然后我就可以使用

from my_module import my_function
Run Code Online (Sandbox Code Playgroud)

这正是我在我的项目中所做的。我写了两个脚本并将它们保存在一个目录中。我想在第三个脚本中使用它们的一些函数(再次保存在同一目录中)。如下图所示。

我的python脚本

现在我通过以下方式 导入WebScraper.py在此处输入图片说明

正如您在上图中所看到的,有一个错误表明没有名为WebScraper 的模块。我该如何处理这个问题?

ano*_*non 7

在 Spyder IDE 中,我可以从您的屏幕截图中看出,当前工作目录(显示在右上角)与脚本所在的目录(显示在编辑器面板的顶部)不同。

如果您打开“工具”菜单,选择“首选项”,然后切换到“运行”选项卡,您将找到一个名为“工作目录设置”的框,您可以在其中选择“正在执行的文件的目录”或“当前工作目录”。我怀疑,事实上,你选择了后者。这将解释为什么找不到模块。

使用默认设置——“正在执行的文件的目录”——Spyder 将简单地在其自己的文件夹中执行脚本,并且脚本可以毫无问题地找到模块。