0

我有一本这样的字典:

data_heading = {'Date': [(3,2)],
                'Rate': [(3,3)],
                'Product': [(3,7)]}

KEY 定义 csv 文件中列的标题,VALUE 定义[(row number, col number)]
我要读取的数据,从特定的 LINE 和特定的 COLUMN 开始,直到 csv 文件的结尾。
读取文件内容后,我想编写读取数据的新 csv。我对这个问题很困惑,我尝试了很长很长的代码,但仍然无法编写这样的文件。
我会感谢你的支持。请帮我。
我已读取数据并将其存储在如下列表中:

data = ['Date', '2013-03-01', '2013-03-01', '2013-03-01', 'Rate', '$ 50', '$ 60', '$ 70', 'Product', 'MOBILE', 'DVD', 'TV']

但我无法将它写在 csv 中。. .

4

1 回答 1

1

这个怎么样(未经测试,因为您没有提供完整的代码+数据):

import csv

data_heading = {'Date': [(3,2)],
            'Rate': [(3,3)],
            'Product': [(3,7)]}

rdr = csv.reader(open(csvpath, 'rb'))
columns = [{key:row[pos[0][1]] for key,pos in data_heading.items()} for row in rdr]
# finally trim to desired row startpoints:
data = {key:[col[key] for col in columns[pos[0][0]:]] for key,pos in  data_heading.items()}
print data

这有点粗糙,因为您data_heading的格式有点尴尬。如果您可以自由更改它,则可以使代码更具可读性。

之后你可以写 CSV -data应该是一个足够简单的字典来写出来。

于 2013-03-01T11:40:47.213 回答