Python csv.reader 正在第二次打印最后一行



我有一个 2 列逗号分隔的英语句子文本文件及其翻译成另一种语言,每个翻译对都在新行上,例如

i like cats,me gustan los gatos    
hello,hola

我想打开该文件,然后获取该对的第二部分(翻译(并列出这些翻译。 我已经使用了显示的代码。 但是,输出是最后一项总是在列表之后的末尾再次打印,这是我不想要的。

with open('translate_outputs.txt', newline ='') as translations:
    translation_reader = csv.reader(translations, delimiter = ',')
    for translation in translation_reader:
        just_translation = translation[1].lower()
        translation_list = []
        translation_list.append(just_translation)
        print(translation_list)

预期成果:

['me gustan los gatos']  
['hola']

实际结果:

['me gustan los gatos']  
['hola']  
hola

提供预期输出的代码的简短版本。
(我删除了附加到列表(

import csv
with open('translate_outputs.txt', newline='') as translations:
    translation_reader = csv.reader(translations, delimiter=',')
    for translation in translation_reader:
        print(translation[1].lower())

输出

me gustan los gatos
hola

最新更新