微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Spyder中的“运行”和“运行完全选择”之间有何不同?

如何解决Spyder中的“运行”和“运行完全选择”之间有何不同?

我有一个包含许多自定义模块的源代码。@H_404_1@

在前几行中,有import个单词,例如... @H_404_1@

import custom_module_1
import custom_module_2
import custom_module_3
....

当我运行(快捷方式为F9)此代码并进行部分或全部选择时,我发现了ModuleNotFoundError: custom_module_1。@H_404_1@

但是,当我运行(F5)代码时,我运行得很好runfile('C:/Users/user/Desktop/test.py',wdir='C:/Users/user/Desktop') @H_404_1@

我很困惑,因为我认为'run(F5)'和'full selection run(F9)'是相同的。@H_404_1@

但是结果却大不相同。@H_404_1@

在Spyder中,“运行(F5)”和“全选运行(F9)”之间是否有区别?@H_404_1@

解决方法

(此处为 Spyder维护程序),区别如下:

  • Run selection获取您在编辑器中选择的代码,将其粘贴到控制台中并运行。
  • Run file与执行python myfile.py类似,但是在更改目录之前,您的代码将运行到文件所在的目录。它还将在一个干净的命名空间中运行因此它不受控制台中当前定义的变量的影响。特别是由于这最后一个功能,您应避免使用Run selection

在您的情况下,我认为问题在于Run selection不会更改目录,因此Python找不到test.py旁边的模块。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。