2017-06-16 194 views
-1

嗨,我是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 

請幫助我的解決方案,在此先感謝。

+3

請檢查壓痕。 – Arun

+2

檢查前一行的括號。你忘記關閉'sorted(...' –

回答

0

問題在於縮進!

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

0

試試下面的代碼:

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) 
相關問題