[问题] 重复使用同一csv时发生问题

楼主: hutdris   2016-03-23 11:37:11
这边是程式码
http://www.codeskulptor.org/#user41_m3ClsqQPk7wXkna.py
用csv.DictReader()读入一csv后
根据不同的header组合来把资料分类,
假设说原本的csv是
A,B,C,D
1,2,3,4
1,1,3,4
1,2,1,1
想要把它存成dict格式,用('A','B')当key:
{('1','2'):[row1,row3],('1','1'):[row2]}
这就是header_dict(row_index,input_csv)的目标
但是在实际运行时,第一次使用这个函数ok,第二次使用就失败了,
似乎是第一次运行时会更动到原本的site_csv,
但是我并没有在函数里对input_csv作更动阿,
还是说如果每次使用
for row in input_csv:
之后,要把这个csv的计数器归零呢?
自问自答:
是的,如果要重复迭代同一个csv,要在for结束之后使用
data.seek(0),把计数器归0。
参考自:
http://stackoverflow.com/questions/20507228/
python-how-do-i-use-dictreader-twice
短网址: http://tinyurl.com/zux2ky6
作者: ihcaoe (Ihc)   2016-03-24 14:45:00
重读档会比较好维护一点
作者: Yshuan (倚絃)   2016-03-24 19:15:00
写成可以给with包装的物件吧

Links booklink

Contact Us: admin [ a t ] ucptt.com