2015-08-21 64 views
0

我是Python新手,很難搞清楚如何編寫一個程序,該程序會爲.csv文件中的每一行寫出一個.txt文件。例如,我有以下.csv文件包含來自多個計算的數據,我需要爲每個單獨的計算創建.txt文件。格式化是粗糙的在這裏做的,但大膽的字母是列名和對應元素之下(例如:「RUN2和‘20’屬於C列)。從單個.csv生成多個.txt文件?

ABCD

標題:RUN1運行2 RUN3

「初始組合物:FeO的」 10 20 30

「初始組成:MgO的」 40 50 60


我希望我的Python代碼輸出如下:

的1.txt:

標題:運行1

初始組成:FeO的10

初始組成:氧化鎂:40


2.txt:

名稱:執行命令2

初始組合物:20的FeO

初始組成:氧化鎂:50


從A所需要的元素,以在每一個.txt文件被打印從數包含在B,C等欄目中的各種計算......打印在一個空間旁邊。獎金積分也可以幫助我根據標題爲.txt文件創建自定義文件名(例如:A列中的數據創建一個名爲「Run1.txt」的.txt文件。不知道是否將每列分配給一本字典,然後追加它們放在一起會是最好的途徑

謝謝

+0

它看起來像你wa nt我們爲你寫一些代碼。 – styvane

+0

不,只是不知道該從哪裏開始。我已經玩過csv模塊,但不知道是否可能將每列分配給字典,然後將它們附加在一起將是最佳路線?有沒有一種方法可以自定義名稱文件?對不起,我是Python的一週。 – Scott

回答

1

事情是這樣的:?!

with open('runs.csv','rb') as read_file: 
    reader = csv.reader(read_file) 
    for run in reader: 
     with open(run[0] + '.txt','wb') as write_file: 
      write_file.write(run[1] + '\n') 

爲了與格式「名稱的文件」 csv文件,」運行結果「,顯然這可以用你想要的任何東西來代替。

+0

我會試試看!謝謝! – Scott

+0

所以我們可以說我在第1列有我的「模板」(即「標題」或「初始構圖:FeO」)。我的腳本必須在每個輸出文件上寫入第1列,並在第2列的內容旁邊。下一個文件需要將列1的內容寫入列1旁邊,依此類推。 Python中是否有一個特定的方法來執行此操作? – Scott