从单个.csv生成多个.txt文件?

时间:2015-08-21 21:08:51

标签: python python-2.7 csv

我是Python的新手,我很难搞清楚如何编写一个程序,为.csv文件中的每一行写出一个.txt文件。例如,我有以下.csv文件包含来自多个计算的数据,我需要为每个单独的计算创建.txt文件。格式化在这里很粗略,但粗体字母是列名,相应的元素在下面(例如:“Run2和”20“属于C列)。

A B C D

标题:Run1 Run 2 Run3

“初始成分:FeO”10 20 30

“初始组成:MgO”40 50 60

我希望我的Python代码输出以下内容:

的1.txt:

标题:运行1

初始成分:FeO 10

初始成分:Mgo:40

2.txt:

标题:运行2

初始成分:FeO 20

初始成分:Mgo:50

A中的元素需要打印在每个.txt文件中,其中包含列B,C等中包含的各种计算中的数字...旁边有空格。任何可以帮助我根据标题创建.txt文件的自定义文件名的人的加分点(例如:A列中的数据创建一个名为“Run1.txt”的.txt文件。不知道是否将每列分配给一本字典,然后将它们全部附加在一起将是最好的路线?

谢谢!

1 个答案:

答案 0 :(得分: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文件,显然这可以替换为您想要的任何内容。