首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >一次性模块导入运行,多个模块组合

一次性模块导入运行,多个模块组合

原创
作者头像
牛马打工人
发布2026-05-25 19:48:19
发布2026-05-25 19:48:19
1440
举报

既然是需要严格按顺序执行(比如必须等第一个文件彻底跑完,第二个才能开始),最推荐你使用 Python 自带的 subprocess 模块来写一个“总指挥”脚本。

这里有三种非常好用的方法,你可以挑一个最顺手的:

方法一:写一个 run_all.py(最推荐,跨平台通用)

这种方法最稳健,不管你是 Windows 还是 Mac,只要运行这一个文件,它就会乖乖地按顺序把你的脚本一个个跑完。

1. 在你的文件夹里新建一个文件,命名为 run_all.py。

2. 把下面的代码复制进去,把文件名换成你自己的:

import subprocess

import sys

在这里按顺序写上你要运行的文件名

scripts = [

"1_数据预处理.py",

"2_模型训练.py",

"3_结果导出.py"

]

for script in scripts:

print(f"🚀 正在开始运行: {script} ...")

# check_call 会等待当前脚本运行结束后,再继续下一个

# 如果中间某个脚本报错,程序会自动停止,不会继续往下跑

try:

subprocess.check_call([sys.executable, script])

print(f"✅ {script} 运行成功!n")

except subprocess.CalledProcessError:

print(f"❌ {script} 运行出错,程序已终止!")

sys.exit(1)

print("🎉 所有脚本均已按顺序执行完毕!")

3. 在终端里运行它:python run_all.py。

方法二:用命令行一行搞定(最快,不用写新文件)

如果你不想新建文件,可以直接在终端(黑框框)里用命令把它们串起来。

* 如果你是 Windows (CMD 或 PowerShell):

用 & 符号连接,它会按顺序执行:

python 1.py & python 2.py & python 3.py

* 如果你是 Mac 或 Linux:

用 && 符号连接(它的好处是:如果前一个报错了,后面的就不会执行,更安全):

python 1.py && python 2.py && python 3.py

方法三:直接导入(仅适用于没有 if name == "main": 的简单脚本)

如果你的那些 .py 文件写得很简单(没有把主逻辑包在 if name == "main": 下面),你也可以直接在 run_all.py 里用 import:

import 脚本1的名字

import 脚本2的名字

import 脚本3的名字

注意:这种方法有坑,因为 Python 导入模块时可能会缓存,如果你反复修改脚本1并反复运行 run_all,有时候脚本1的改动可能不会生效。所以强烈建议用方法一。

💡 小提示:

既然你的文件是相互关联的,使用方法一时,请确保你打开终端的路径(也就是你输入 python run_all.py 时所在的文件夹),和你这些 .py 文件所在的文件夹是同一个,这样它们互相找数据才不会迷路哦!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档