从输出中删除“”

2024-05-23 13:58:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试写入CSV文件,输出应如下所示:

 meist,L, ,meist (30), meisten (95)

但是看起来,连接的字符串得到"

 meist,L, ,"meist (30), meisten (95)"

我的代码如下:

      with open(dest_csv_file, 'w') as csvfile:
        writer = csv.DictWriter(csvfile, fieldnames=['wortstamm', 'words'])
        writer.writeheader()
        for wortstamm in self.ausgabe:

            words = []
            for word in self.ausgabe[wortstamm]["w"]:
                words.append('' + word + ' (' + str(self.ausgabe[wortstamm]["w"][word]) + ')')

            words_string = ', '.join(words)

            writer.writerow({'wortstamm': wortstamm, 'words': words_string})

如何让代码编写所需的输出?必须更改什么?谢谢你的帮助


Tags: csvcsvfile代码inselfforstringword
1条回答
网友
1楼 · 发布于 2024-05-23 13:58:48

如果您给csv writer的某个字段包含,,它将被引号括起来,这样就不会被视为多个字段。如果有多个字段,则应该分别传递它们,而不是像代码中那样用逗号连接它们

因为您的字段似乎来自一个列表,所以使用csv.writer(为每一行指定一个字段列表)而不是csv.DictWriter(为每个字段指定一个名称的字典)可能更容易

示例:

writer = csv.writer(csvfile)
for wortstamm in self.ausgabe:
     words = ....
     writer.writerow([wortstamm] + words)

相关问题 更多 >