如何 Select 在文件中重复出现文本

How to Select Recurring Text in a File

我正在编写代码,用户可以在其中输入多项选择中的一个选项。无论他们给出什么答案,例如 "a" 或 "b",都会被写为 "Correct" 或 "Not Correct" 到一个单独的文本文件中,(StudentAnswers.txt)。 很明显,新的文本文件会填充多行"Correct",而"Incorrect"

这部分已经实现了,但是有人可以告诉我如何创建读取文本文件 "StudentAnswers" 的代码,并且如果循环 "Correct" 值的总数大于或等于一半,打印 "Passed",否则打印 "Fail"

希望大家理解。谢谢

您可以读取文件行并针对 "Correct" 或 "Not Correct".

过滤它们
lines = open(file).readlines()
total = len(lines)
totalOK = len(filter( lambda x: x == "Correct\n") lines)
if totalOK >= total / 2:
    print "Passed"
else:
    print "Failed"

如果您不熟悉 lambdafilter,您可以这样做:

def countOK ( lines ):
    cnt = 0
    for i in lines:
        if i == "Correct\n":
            cnt += 1
    return cnt
...
lines = open( file ).readlines()
total = len( lines )
totalOK = countOK (lines)
if totalOK >= total / 2:
    print "Passed"
else:
    print "Failed"