Python csv.writer将每行写入单独的单元格/列
Python csv.writer将每行写入单独的单元格/列,python,csv,file,export-to-csv,Python,Csv,File,Export To Csv,目标:从大型文本文件中提取每个段落,并将其存储在.csv文件中。新行(“\n”)用作分隔符 这是im使用的代码: import csv input_file = open('path', 'r') output_file = open('path', 'a+') writer = csv.writer(output_file) list = [] for line in input_file: if line != "\n": list.append(
目标
:从大型文本文件中提取每个段落,并将其存储在.csv文件中。新行(“\n”)用作分隔符
这是im使用的代码:
import csv
input_file = open('path', 'r')
output_file = open('path', 'a+')
writer = csv.writer(output_file)
list = []
for line in input_file:
if line != "\n":
list.append(line)
else:
writer.writerow(list)
list.clear()
这里的目标是解析每一行并将其附加到列表中,直到遇到“\n”
,并将列表中的内容存储到.csv文件中的单个单元格中
代码工作正常,但由于某些原因,每一行都被打印在单独的列/单元格中,而不是将整个段落
打印到单个单元格中
预期输出:
第1行:
这是stackoverflow
使用python语言
电流输出:
第1行:
这是stackoverflow。使用python语言
这里缺少什么?writerow
方法将内容写入一行,即将每个元素写入同一行的单独列中
这不是对你有用吗
导入csv
打开(输入路径“r”)作为f:
段落=f.read().split('\n\n')
打开(输出路径“w”)作为f:
writer=csv.writer(f)
writer.writerows(列举(段落))
我认为有两件事不对。input\u文件中的每一行
都将以\n
字符结尾,这正是input\u文件中的行的工作方式:
(即换行符分隔文件中的行)。其次,您应该始终使用open(…,newline='')
打开CSV文件,如CSV
模块所示。您应该在您的。