最佳答案
用 Csv. DictReader处理 CSV 文件非常好——但是我有一些带注释行的 CSV 文件(注释行开头用散列表示) ,例如:
# step size=1.61853
val0,val1,val2,hybridisation,temp,smattr
0.206895,0.797923,0.202077,0.631199,0.368801,0.311052,0.688948,0.597237,0.402763
-169.32,1,1.61853,2.04069e-92,1,0.000906546,0.999093,0.241356,0.758644,0.202382
# adaptation finished
Csv 模块 不包括任何跳过这些句子的方法。
我可以很容易地做一些奇怪的事情,但是我想有一种很好的方法可以将 csv.DictReader
包装到其他迭代器对象上,这些迭代器对象会进行预处理以丢弃这些行。