Python 有条件地从命令行包含类

问题描述 投票:0回答:0

我正在制作一个 python 脚本,它需要比较两个程序的标准输出,它使用

subprocess
运行两个二进制文件并收集它们的标准输出。但是,根据我比较的程序,stdout 格式会有所不同。我希望能够为我的许多程序中的每一个定义一个“
output_collector
”类,它将结果转换为仅包含需要比较的数据的通用格式,然后有条件地从命令行包含此类。

我理想的程序界面应该是这样的

python3 compare_outputs.py --prog1 binary1 --prog1-collector ../path/to/prog1/output_collector.py --prog2 binary2 --prog2-collector ../path/to/prog2/output_collector.py

然后在主脚本中执行如下操作:

data1 = collect1(prog1_stdout)
data2 = collect2(prog2_stdout)
results = compare(data1,data2)

这可能吗,或者是否有明显更好的方法来实现我所缺少的?

python class command-line-interface stdout
© www.soinside.com 2019 - 2024. All rights reserved.