gpt4 book ai didi

python - 如何让 VSCode 自动重新加载外部 *.py 模块?

转载 作者:太空宇宙 更新时间:2023-11-03 15:34:00 24 4
gpt4 key购买 nike

我正在 Visual Studio Code 中处理 python 代码,并使用多个文件作为函数,我在脚本的开头导入这些文件。比方说,我在与主脚本相同的文件夹中有一个文件“doStuff.py”,内容为

def doStuff():
print('I am doing stuff!')
# print('lots of stuff.')

然后我会在另一个脚本中导入它,例如编写“main.py”

from doStuff import doStuff
doStuff()

如果我现在运行脚本然后运行,例如取消注释 doStuff.py 中函数的第二行,我希望看到我的 doStuff() 方法的新行为。不幸的是,这不会发生。我最近从 Spyder 切换到 VSCode,在 Spyder 中这总是自动工作,但 VSCode 似乎不会自动重新加载导入的模块。

关于我当前工作流程的一些信息:要打开编程环境,我使用“文件/打开文件夹”并选择main.py 和doStuff.py 所在的文件夹。然后我使用“在 Python 交互窗口中运行当前文件”来启动我的脚本。我猜想有更好的方法,它可能与 launch.json 文件有关,但到目前为止,我发现让它使用更改后的外部符号的唯一方法是重新启动 VSCode。

编辑:这里的问题:Visual Studio Code: Auto-refresh file changes是不同的,如果我理解正确的话,因为它是关于要在 VS-Code 中重新加载的外部更改文件。我的问题与在交互式窗口中重新加载 python 模块有关。

编辑 2: Screenshot, so you believe me.

最佳答案

更新:最终的解决方案。只需将其添加到您的代码中即可。

%reload_ext autoreload
%autoreload 2

========================================当 .py 文件更改时,我找不到使 vscode 自动重新刷新的 python 交互的方法。但我尝试了 importlib.reload(),它以某种方式起作用。

import funcs
import importlib
importlib.reload(funcs)
from funcs import *

funcs 是我的 .py 文件,上面的代码应该在文件更改时运行。

关于python - 如何让 VSCode 自动重新加载外部 *.py 模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56059651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com