在单独的文本文件中导出每行 csv 显示密钥错误

Export each lines of csv in a seperated txt file display key error

所以我试图将我的 csv 文件中特定列的每一行导出到一个 txt 文件中;我有100多行。


import csv


import csv

with open('MF.csv', 'r') as csvfile:
    reader = csv.DictReader(csvfile, delimiter=';')
    for row in reader:
        file_name = "{}_{}.txt".format(row['id'], row['labels'])
        line = row['sentences']
        with open(file_name, 'w') as output:
            output.write(line)

错误:

Traceback (most recent call last):
  File "csv_to_txt.py", line 7, in <module>
    file_name = "{}_{}.txt".format(row['id']; row['labels'])
KeyError: 'id'

我很难弄清楚它抛出 KeyError 的原因。

文件看起来像这样

id;labels;sentences
1;M;On a presque laissé 
2;M;ça ne changera rien
3;M; [...], je voyais ça la lune.
4;M;ça existe 
5;M;Ce qui.
6;M;La facilité de changer.

您的 csv 中有 ; 作为分隔符,您需要在创建 csv.DictReader

的实例时指定
reader = csv.DictReader(csvfile, delimiter=';')