【问题标题】:Running test file on directory of similair files and recording results在类似文件的目录上运行测试文件并记录结果
【发布时间】:2021-03-25 18:02:26
【问题描述】:

我有一个看起来像这样的 python 文件目录

documents/needTesting/
                      algorithmV1.py
                      algorithmV2.py
                      ....
                      algorithmVn.py

它们都采用相同的参数并具有相似的输出。 有没有办法让我一次测试所有这些并将结果存储在一个文件中?

理想情况下,我希望结果看起来像这样。

V1 offset: 0.2% Runtime: 50ms
V2 offset: 1.4% Runtime: 34ms
...
Vn offset: ...  Runtime: ...

【问题讨论】:

    标签: python python-3.x bash unix scripting


    【解决方案1】:
    for f in documents/needTesting/*.py; do
        python3 "$f" >> results.txt
    done
    

    您可以在"$f" 之前或之后添加命令行输入。确保所有 python 文件都打印 1 行(理想情况下 - V1 偏移量:0.2% 运行时间:50 毫秒)。要获得运行时,您可以使用 time 模块(在每个 python 文件中)。

    如果您不想更改每个 python 文件,您可以通过创建一个文件 wrapper.py 来包装它们,该文件采用一个命令行参数,导入该文件并对其计时/获取结果。查找动态导入/使用模块。

    该命令的 shell 脚本类似于:

    for f in documents/needTesting/*.py; do
        python3 wrapper.py "$f" >> results.txt
    done
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-18
      • 1970-01-01
      • 2015-08-31
      • 1970-01-01
      • 2012-07-29
      • 2018-05-27
      • 2013-03-30
      相关资源
      最近更新 更多