打印行为数字在文件中更改

我有一个文件。我希望将文件分发。 例如:输入文件是:打印行为数字在文件中更改

2372198_19  AT4G23820.1|PACid:19648287  

2372198_19 AT5G41870.1|PACid:19672701

2372198_19 AT3G62110.1|PACid:19660795

2372198_19 AT4G33440.1|PACid:19647232

2372198_19 AT3G16850.1|PACid:19660978

2372198_19 AT3G61490.3|PACid:19663321

2372198_19 AT3G61490.2|PACid:19663320

2373893_1 AT4G23160.1|PACid:19648072

2373893_1 ATMG00810.1|PACid:19643614

2367273_1 AT1G69180.1|PACid:19652993

2367273_1 AT2G26580.2|PACid:19640069

2367273_1 AT2G26580.1|PACid:19640068

2367273_1 AT1G08465.1|PACid:19651039

2367273_1 AT2G45190.1|PACid:19639922

2367273_1 AT1G23420.1|PACid:19656327

2367273_1 AT4G00180.2|PACid:19644521

2367273_1 AT4G00180.1|PACid:19644520

2371695_1 AT1G70140.1|PACid:19656286

2371695_1 AT1G70140.1|PACid:19656286

2371695_1 AT1G59910.1|PACid:19656798

2371695_1 AT1G24150.1|PACid:19657122

2371695_1 AT1G24150.1|PACid:19657122

2371695_1 AT3G05470.1|PACid:19661743

2371695_1 AT5G54650.2|PACid:19672246

2371695_1 AT5G54650.1|PACid:19672245

2297048_8 AT4G39650.1|PACid:19647398

2297048_8 AT4G39640.2|PACid:19648663

2364073_4 AT2G01970.1|PACid:19643231

2364073_4 AT5G37310.1|PACid:19668336

2364073_4 AT1G08350.2|PACid:19655122

2364073_4 AT1G08350.1|PACid:19655123

2364073_4 AT1G10950.1|PACid:19657004

2364073_4 AT3G13772.1|PACid:19663994

2373583_3 AT2G04220.1|PACid:19638128

2373583_3 AT4G12690.2|PACid:19644712

2373583_3 AT4G12690.1|PACid:19644711

2373583_3 AT5G48270.1|PACid:19668704

2373583_3 AT3G13229.1|PACid:19660988

2286036_1 AT5G12890.1|PACid:19667274

2286036_1 AT4G34131.1|PACid:19648916

2286036_1 AT1G01420.1|PACid:19652756

2286036_1 AT2G15480.2|PACid:19641746

现在我要解析它,我只打印每个数字的第一线,有些这样那样的一种方式。 。 我出来就把文件:

2372198_19  AT4G23820.1|PACid:19648287  

2373893_1 AT4G23160.1|PACid:19648072

2297048_8 AT4G39650.1|PACid:19647398

2364073_4 AT2G01970.1|PACid:19643231

2373583_3 AT2G04220.1|PACid:19638128

2286036_1 AT5G12890.1|PACid:19667274

回答:

试试这个:

old_number = '' 

for line in file:

number = line.split('_')[0]

if number == old_number:

continue

else:

print line

old_number = number

回答:

您可以使用itertools.groupby()

with open("input") as f: 

for unused_key, it in itertools.groupby(f, lambda s: s.partition("_")[0]):

print(next(it))

以上是 打印行为数字在文件中更改 的全部内容, 来源链接: utcz.com/qa/263535.html

回到顶部