2015-04-05 48 views
-2
import csv 
from itertools import izip 
    if l > 0: 
      for i in range(0,l): 
     combined.append(str(questionList[i]).encode('utf-8') + str(viewList[i]).encode('utf-8')) 
#  viewcsv.append(str(viewList[i]).encode('utf-8')) 
#  quescsv.append(str(questionList[i]).encode('utf-8')) 
     with open('collect.csv', 'a') as csvfile: 
      spamwriter = csv.writer(csvfile, delimiter='\n') 
      spamwriter.writerow(combined) 
#   spamwriter.writerows(izip(quescsv, viewcsv)) 
     return 1 
    else: 
     return 0 

我需要生成一個CSV文件,並與2名或多個列表的數據到單獨的列而不是單列淹沒它與多個數據在單獨的列csv文件的列表。目前我試圖將兩個列表合併到一個列表中(合併),並將其用作寫入輸入,但我沒有得到所需的o/p。 我已經嘗試了很多東西,包括字段名稱方式,izip方式,但徒勞無功。 例如: questionList Viewlist產品 4 3次 5 0次用Python寫

使用的數字只是例如。

+1

你能寫你的輸入數據的例子,預期的輸出文件? – Fomalhaut 2015-04-07 06:01:41

回答

0

也許,你需要的東西是這樣的:

import csv 

X = [1, 2, 3, 4, 5] 
Y = [2, 3, 5, 7, 11] 
Z = ['two', 'three', 'five', 'seven', 'eleven'] 

with open('collect.csv', 'w') as csvfile: 
    writer = csv.writer(csvfile, delimiter=',') 
    for row in zip(X, Y, Z): 
     writer.writerow(row) 
+0

該解決方案不符合要求。它寫在同一列,我的查詢是寫在單獨的列。 – 2015-04-07 05:52:37

0
import csv 

X = [1, 2, 3, 4, 5] 
Y = [2, 3, 5, 7, 11] 
Z = ['two', 'three', 'five', 'seven', 'eleven'] 

with open('collect.csv', 'w') as csvfile: 
    writer = csv.writer(csvfile, delimiter=',') 

    writer.writerow(X) 
    writer.writerow(Y) 
    writer.writerow(Z)