使用嗅探器删除tsv的第一行

问题描述:

我有这样的代码。我试图删除有一个字段名称,说field1,field2,..,fieldn的tsv文件的第一行。使用嗅探器删除tsv的第一行

  1. 这段代码有问题。我没有得到方言部分的权利。目前它给出了一个AttributeError:'function'对象没有属性'readline。

  2. 也有一种方法,我可以从标题中提供一些字段名称供其阅读。我试着用csv.Sniffer()。has_header方法做这件事,但没有运气。

请帮

with open('outfile.txt','rb') as tsvin: 
    dialect=csv.Sniffer().sniff.readline(1024) 
    tsvin.seek(0) 
    reader=csv.reader(tsvin,dialect,delimiter='\t') 
    #has_header=csv.Sniffer().has_header(inf.read(1024)) 

for row in tsvin: 
    tsid= row[0] 
    full_list.append(tsid) 
    print [(g[0],len(list(g[1]))) for g in itertools.groupby(full_list)] 

我得到这个权利:

data= csv.reader(open('outfile.tsv','rb'), delimiter = "\t") 
fields=data.next() 
for row in data: 
     tsid=row[0] 
     full_list.append(tsid) 
print [(g[0],len(list(g[1]))) for g in itertools.groupby(full_list)]