如何在python中格式化CSV文件

时间:2017-08-24 08:55:13

标签: python csv export-to-excel export-to-csv

我正在尝试在python中创建一个看起来像这样的CSV文件:

Person A    Class 1
            Class 2
            Class 3
Person B    Class 1
            Class 2
            Class 3
            Class 4
Person C    Class 1
Person D    Class 1
            Class 2

我有一个词典,其中dict [person A] = [class 1,class 2,class 3],但它很容易弄乱数据结构。我该怎么做呢?

2 个答案:

答案 0 :(得分:1)

这不是您使用CSV文件的方式。构建数据的正确方法是使用标题

Person,Class

并在

形式的行下
A,1
A,2
A,3
B,1
B,2
B,3
B,4
C,1
D,1
D,2

你只需要遍历你的词典并在每个人的条目中,遍历他们的类并为每一对做一些爱csvfile.writerow([person, class])的事情。

答案 1 :(得分:0)

准确地获取您所显示的格式:

data = dict()

data['Person A'] = ['Class 1', 'Class 2', 'Class 3']
data['Person B'] = ['Class 1', 'Class 2']

outstr = ''
for key, value in data.items():
    left = key
    for line in value:
        outstr += left + '\t' + line + '\n'
        left = ' '*len(key)

print(outstr)

但正如gboffi评论的那样,如果csv格式不是一成不变的,那么使用可变长度记录格式可能会更好。