pta运行结果比预期多一行




import re

def check_duplicate_words(lines):
    result = []
    for i, line in enumerate(lines):
        matches = re.findall(r'\b(\w+)\s+\1\b', line)
        if matches:
            for match in matches:
                result.append((match,line))
    return result

# 示例
text = '''This is a desk.
That is is a table.
There are many many apples.
'''
lines = text.split('\n')

result = check_duplicate_words(lines)
for word, line in result:
    print(f"{word},{line}.strip()")




你的代码中,最后一行的print语句多了一个.strip()方法,所以导致输出结果中每一行的末尾都多了一个空格。

正确的修改后的代码如下,这样可以去掉每一行末尾的空格,满足你的预期了

result = check_duplicate_words(lines)
for word, line in result:
    print(f"{word},{line.strip()}")

如果以上回答对您有所帮助,点击一下采纳该答案~谢谢