2017-03-31 123 views
1

我想編寫輸出以下一個CSV:Python:如何編寫CSV文件?

John 
Titles Values 
color  black 
age  15 

Laly 
Titles Values 
color  pink 
age  20 

total age 35 

到目前爲止有:

import csv 

students_file = open(‘./students_file’, ‘w’) 
file_writer = csv.DictWriter(students_file) 

… 

file_writer.writeheader(name_title) #John 
file_writer.writeheader(‘Titles’:’Values’) 
file_writer.writerow(color_title:color_val) #In first column: color, in second column: black 
file_writer.writerow(age_title:age_val) #In first column: age, in second column: 15 
file_writer.writerow('total age': total_val) #In first column: 'total age', in second column: total_val 

但好像它只是寫在新行而不是把相應的值旁邊的每個其他。

創建上述示例的正確方法是什麼?

+1

我建議看看這個:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_csv.html ...在大多數這種情況下使用熊貓是非常好的 – Chris

+2

我不認爲你有'.csv'權利的概念。 'c'代表逗號(或任何其他分隔符)。把它看作是一張excel表格。第一行包含col名稱,然後是值。你不需要寫例如。 「年齡」兩次。 –

+0

@ansi_lumen欣賞迴應。意識到這是一個優秀表格。在Excel表格中,想創建示例。你介意把它作爲答案嗎?這樣我就可以贊成/接受。 –

回答

2

我認爲你沒有得到.csv的概念吧。 c代表逗號(或任何其他分隔符)。我想這意味着C omma,S eparated,V alues。

把它想象成一個Excel工作表或關係數據庫表(例如MySQL)。

大多數情況下,文檔都以一列col名稱開頭,然後是值。你不需要寫例如。老化兩次。一個.csv

firstname,lastname,age,favorite_meal 
Jim,Joker,33,"fried hamster" 
Bert,Uber,19,"salad, vegan" 

常文

例結構被封閉在"來,這樣本身可以包含逗號和dont't打擾你.csv結構。