如何测试包含测试用例的输入文件的Python脚本?

2 投票
4 回答
5824 浏览
提问于 2025-04-15 12:24

我正在参加在线编程比赛,想用一个包含很多测试案例的 .in 文件来测试我的代码,以便测量我的算法运行时间。请问我该怎么让我的脚本从这个 .in 文件中读取输入呢?

4 个回答

1

PyUnit 是“Python的标准单元测试框架”,可能正是你需要的东西。


你可以写一个小脚本,做一些类似这样的事情:

#!/usr/bin/env python
import sys

def main():
    in_file = open('path_to_file')
    for line in in_file:
        sys.stdout.write(line)

if __name__ == "__main__":
    main()

然后运行它,像这样:

this_script.py | your_app.py
2

从文件或标准输入读取数据:

import fileinput
for line in fileinput.input():
    process(line)
7

这个脚本通常是从标准输入(stdin)获取测试用例,现在你想用文件里的测试用例来测试,对吧?

如果是这样的话,可以在命令行上使用 < 这个重定向操作:

my_script < testcases.in

撰写回答