差不多,我有一个目录,其中包含两种类型的文本文件,一堆以“summary_”开头的文件和一堆以“log”开头的文件。所有这些文本都位于同一目录中。现在我不关心“log”文本文件,我只关心以“summary”开头的文件。
每个“摘要”文件包含 7 行文本或 14 行文本。 每行末尾会根据测试结果显示“通过”或“失败”。要使测试结果通过,所有 7 或 14 行末尾必须显示“PASS”。如果其中一行只有一个“FAIL”,则测试失败。我想统计通过和失败的次数。
import os
import glob
def pass_or_fail_counter():
pass_count = 0
fail_count = 0
os.chdir("/home/dario/Documents/Log_Test")
print("Working directory is ") + os.getcwd()
data = open('*.txt').read()
count = data.count('PASS')
if count == 7 or 14:
pass_count = pass_count + 1
else:
fail_count = fail_count + 1
print(pass_count)
print(fail_count)
f.close()
pass_or_fail_counter()
最佳答案
我不知道 Pycharm 内的情况,但以下内容似乎可以在没有 Pycharm 的情况下工作:
import os
import glob
def pass_or_fail_counter(logdir):
pass_count, fail_count = 0, 0
for filename in glob.iglob(os.path.join(logdir, '*.txt')):
with open(filename, 'rt') as file:
lines = file.read().splitlines()
if len(lines) in {7, 14}: # right length?
if "PASS" in lines[-1]: # check last line for result
pass_count += 1
else:
fail_count += 1
print(pass_count, fail_count)
pass_or_fail_counter("/home/dario/Documents/Log_Test")
关于python - 使用 Pycharm,一旦代码运行,我就不会得到任何输出,只是进程已完成,退出代码为 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44570305/