运行目录下的所有Python文件

24 投票
2 回答
28193 浏览
提问于 2025-04-16 11:55

在一个文件夹里,怎么才能最方便地运行所有的Python文件呢?

python *.py

这样做只能执行一个文件。每个文件写一行在一个脚本里(或者在make文件里)感觉太麻烦了。我需要这样做是因为我有一系列小的matplotlib脚本,每个脚本都会生成一个png图片,我想一次性生成所有的图片。

顺便说一下,我是在使用bash命令行。

2 个回答

21

另一种方法是使用 xargs。这个工具可以让你同时运行多个任务,这在现在的多核处理器上非常有用。

ls *.py|xargs -n 1 -P 3 python

这里的 -n 1 是让 xargs 每次只给每个进程一个参数,而 -P 3 则是让 xargs 最多可以同时运行三个进程。

43

bash 有循环的功能:

for f in *.py; do python "$f"; done

撰写回答