阅读csv文件,并使用python写入另一个文件
问题描述:
嗨,我是python的新手,我想编写一个程序,它将读取csv文件并将数据写入另一个文件。阅读csv文件,并使用python写入另一个文件
下面是代码:
#!/usr/bin/python
import csv
FEED_FILE = '/proj/ctc/temp/sanjay/REC-754/20170529_MUREX_EOD_REC_RATES_20170531.csv'
OUT_FILE = '/proj/ctc/temp/sanjay/REC-754/20170529_MUREX_EOD_REC_RATES_20170531_out.csv'
with open(OUT_FILE, 'w', newline='') as outputfile:
with open(FEED_FILE, newline='') as feed:
writer = csv.writer(outputfile, delimiter=',', quotechar='"')
reader = csv.reader(feed, delimiter=',', quotechar='"')
for row in reader:
row[3] = sorted(list(row[3].split(','))
writer.writerow(row)
,但我得到下面的错误,对此我无法理解为什么呢?
$./Csvreader.py
File "./Csvreader.py", line 14
writer.writerow(row)
^
SyntaxError: invalid syntax
请帮助我的解决方案,在此先感谢。
答
问题在于缩进!
with open(OUT_FILE, 'w', newline='') as outputfile:
with open(FEED_FILE, newline='') as feed:
writer = csv.writer(outputfile, delimiter=',', quotechar='"')
reader = csv.reader(feed, delimiter=',', quotechar='"')
for row in reader:
row[3] = sorted(list(row[3].split(','))
writer.writerow(row)
编辑: 为您更新的问题,还有一个问题,压痕再次!
这
row[3] = sorted(list(row[3].split(','))
writer.writerow(row)
应该
row[3] = sorted(list(row[3].split(','))
writer.writerow(row)
+1
在这种情况下会抛出一个不同的错误,如果你看,前一行的'sorted'调用缺少右括号 –
+0
感谢您的回应。代码也会给出相同的错误 – user2779202
答
试试下面的代码:
with open(OUT_FILE, 'w', newline='') as outputfile:
with open(FEED_FILE, newline='') as feed:
writer = csv.writer(outputfile, delimiter=',', quotechar='"')
reader = csv.reader(feed, delimiter=',', quotechar='"')
for row in reader:
row[3] = sorted(list(row[3].split(',')))
writer.writerow(row)
请检查压痕。 – Arun
检查前一行的括号。你忘记关闭'sorted(...' –