如何在VS Code中创建多个Python终端 同时运行代码与多个.py文件
VS Code 多Python终端并行运行操作指南
多终端同步运行同一份代码操作
- 按快捷键
Ctrl+Shift+``(Mac端为Control+Shift+``)可快速新建VS Code集成终端,重复按该快捷键可创建多个互相独立的终端会话,每个终端默认继承当前项目选中的Python解释器环境 - 若需要在所有终端同步输入执行命令,点击终端面板右上角的下拉菜单,勾选「将输入发送到所有终端」,之后输入的
python 你的代码文件名.py命令会同步在所有已打开终端执行,实现同一份代码多实例并行启动 - 不需要同步输入时取消该勾选即可,各终端恢复独立操作,各进程的输出日志会单独留在对应终端标签内,不会互相混淆
多.py文件并行运行方案
之前尝试的方法失效原因
start /b python bot_1:首先缺少.py文件后缀,其次/b是CMD专属参数,如果VS Code默认终端为PowerShell会直接识别报错;且未指定文件路径时如果当前工作目录不对,会找不到文件start bot_1/start bot_2:未指定用Python解释器执行文件,会直接调用系统中.py后缀的默认关联程序,如果关联的是代码编辑器就会变成打开文件而非运行import bot1, bot2:属于单进程内的顺序导入,不是并行运行,且导入执行逻辑受if __name__ == "__main__"入口规则限制,所有导入的代码共享同一个进程的内存、IO资源,完全无法实现独立并行效果
可用实现方式
方式1:多终端手动启动(最稳定易排查)
根据要运行的py文件数量创建对应数量的独立终端,每个终端内单独执行对应文件的运行命令即可,比如第一个终端执行python bot_1.py,第二个执行python bot_2.py,所有进程完全独立,日志隔离,是最不容易出问题的方案。
方式2:单终端启动多后台进程
根据当前VS Code默认使用的终端类型,执行对应命令即可在单个终端内启动多个并行进程:
- 默认终端为CMD时:
start python bot_1.py start python bot_2.py
- 默认终端为PowerShell时:
Start-Process python -ArgumentList "bot_1.py" -NoNewWindow Start-Process python -ArgumentList "bot_2.py" -NoNewWindow
- 默认终端为bash/zsh(Mac/Linux/WSL环境)时:
python bot_1.py & python bot_2.py &
方式3:Python脚本统一调度
写一个统一入口脚本,用Python标准库启动多个子进程并行运行目标文件,无需手动操作终端,示例代码:
import subprocess import sys # 替换为你要并行运行的py文件路径 target_scripts = ["bot_1.py", "bot_2.py"] process_pool = [] for script in target_scripts: # 用当前Python解释器启动子进程 proc = subprocess.Popen([sys.executable, script]) process_pool.append(proc) # 阻塞等待所有进程运行结束 for proc in process_pool: proc.wait()
直接运行该入口脚本即可自动并行启动所有目标py文件。
内容的提问来源于stack exchange,提问作者lucas lima
相关产品推荐
相关产品推荐

