我有许多制表符分隔文件,所有文件都有280行,我想在单独的文件中分成标准段。我试着这样做,如下所示,我生成文件,但大多数是空的,其他人有一个非常奇怪的格式(只是在很多地方没有意义的随机数)。我该如何抓住这些行?
for histogram in file_names:
with open(histogram,'rt') as tsvin, open(str(histogram)+"_MidA.csv",'w') as MidA, open(str(histogram)+"_ME.csv",'w') as ME, open(str(histogram)+"_ext.csv",'w') as ext, open(str(histogram)+"_EM.csv",'w') as EM, open(str(histogram)+"_MidB.csv",'w') as MidB, open(str(histogram)+"_MF.csv",'w') as MF, open(str(histogram)+"_flex.csv",'w') as flex, open(str(histogram)+"_FM.csv",'w') as FM:
tsvin = csv.reader(tsvin, delimiter='\t')
MidA = csv.writer(MidA)
ME = csv.writer(ME)
ext = csv.writer(ext)
EM = csv.writer(EM)
MidB = csv.writer(MidB)
MF = csv.writer(MF)
flex = csv.writer(flex)
FM = csv.writer(FM)
for row in tsvin:
MidA.writerows(row[1:60])
ME.writerows(row[61:70])
ext.writerows(row[71:130])
EM.writerows(row[131:140])
MidB.writerows(row[141:200])
MF.writerows(row[201:210])
flex.writerows(row[211:270])
FM.writerows(row[271:280])
答案 0 :(得分:0)
row
是tsvin
的一行。
根据{{3}},
row
是一个字符串列表。
因此row[1:60]
指的是文件第一行的第2到第60列。
根据你的第一句话(“我有许多制表符分隔的文件都有280行”)似乎是你的想法。