使用不同的选项标志多次执行 Python 脚本



我有一个使用parser包设置选项标志(如-d dataset-s size等)的Python脚本,最后将结果写入文件。如何在每次运行中使用不同的选项标志多次(按顺序)运行该命令?

我需要这样的东西:

datasets = [a,b,c]
sizes = [100,200,300]
for dataset in dataset:                           #specify parameters
    for size in sizes:                            #specify more parameters
         python script.py -d dataset -s size      #run script
最好的

(甚至是"a")方法是什么?

伪/python代码直接转换为bash,使用数组代替list s和经典for循环:

#!/bin/bash
datasets=('a' 'b' 'c')
sizes=(100 200 300)
for dataset in "${datasets[@]}"; do
    for size in "${sizes[@]}"; do
        python script.py -d "$dataset" -s "$size"
    done
done

如果sizes更像是range,而不是精心挑选的值列表,则可以使用大括号扩展:

for size in {100..300..100}; do
    # ...
done

或算术for循环:

for ((size=100; size<=300; size+=100)); do
    # ...
done

最新更新