Python 将.txt文件转换为CSV

Python 将.txt文件转换为CSV,python,csv,export-to-csv,Python,Csv,Export To Csv,我需要的代码,可以读取一个.txt文件,并输出到一个CSV文件内的数据。.txt文件将包含以下格式的数据: Jeff/Terry/01-10-2020/1-2 +Tom/02-10-2020 -Jeff/03-10-2020 我需要将数据写入一个CSV文件,每次遇到“/”时,字符串都会被拆分和分隔。因此,CSV文件将如下所示: A列 B栏 C列 D列 杰夫 特里 01-10-2020 1-2 +汤姆 02-10-2020 -杰夫 03-10-2020 这里有一些语法错误 第4行缺少右括号:l

我需要的代码,可以读取一个.txt文件,并输出到一个CSV文件内的数据。.txt文件将包含以下格式的数据:

Jeff/Terry/01-10-2020/1-2
+Tom/02-10-2020
-Jeff/03-10-2020
我需要将数据写入一个CSV文件,每次遇到“/”时,字符串都会被拆分和分隔。因此,CSV文件将如下所示:

A列 B栏 C列 D列 杰夫 特里 01-10-2020 1-2 +汤姆 02-10-2020 -杰夫 03-10-2020
这里有一些语法错误

  • 第4行缺少右括号:
    lines=(对于stripped if Line中的行,Line.split(“/”)
  • 第5行应该以
    开头,以
    开头,以open(“data.csv”,“w”)作为out\u文件:
  • 另外,最好将第5行放在第2行的
    块的
    之外
  • 第6行到第8行应该有一个缩进,而不是两个
请尝试以下操作(请参阅):


第3行缺少结束参数csv模块允许您指定分隔符。所以这很简单,不需要拆分。如果你说
作为out\u文件
,你需要用open说
。@现在,
打开中的“a”(“data.csv”,“w”)作为out\u文件:
“as”突出显示@PeterWood,你能解释一下吗?我假设有一种更短的方式来写出我使用CSV模块所写的内容
import csv
with open("data.txt", "r", newline='') as in_file:
    lines = list(csv.reader(in_file, delimiter="/"))
with open("data.csv", "w", newline='') as out_file:
    writer = csv.writer(out_file, delimiter="/")
    writer.writerow(('first', 'second'))
    writer.writerows(lines)