Python 3.x 将4行合并为一个列表元素

Python 3.x 将4行合并为一个列表元素,python-3.x,loops,Python 3.x,Loops,我有一个fastq文件,其中每个“条目”有4行(两行在“+”之前,一行在“+”之后)。如何将每组4行读入单独的列表元素 该文件看起来像: @DQNZZQ1:756:C3K7PACXX:6:1101:2383:2061 1:N:0:CCGTCC GAACCCCACTGTGCACCACCTGTCTCTTATACACATCTAGATGTGTATAAGAGACAGAGATGGGGGCGACGACATTTTTGCAGCTGATGCTAAACGCGGA + @@CFFFFFHHHDHJJJIIJJJIHHG

我有一个fastq文件,其中每个“条目”有4行(两行在“+”之前,一行在“+”之后)。如何将每组4行读入单独的列表元素

该文件看起来像:

@DQNZZQ1:756:C3K7PACXX:6:1101:2383:2061 1:N:0:CCGTCC
GAACCCCACTGTGCACCACCTGTCTCTTATACACATCTAGATGTGTATAAGAGACAGAGATGGGGGCGACGACATTTTTGCAGCTGATGCTAAACGCGGA
+
@@CFFFFFHHHDHJJJIIJJJIHHGGGG<E@C9CDFHG>ABFGGADFHGIGEHCHHGEEC:GHGEH/8=?@99554>CC5CDCCDD=CD44>C@>@@DD@
@DQNZZQ1:756:C3K7PACXX:6:1101:2486:2062 1:N:0:CCGTCC
GCCCAAGACGGCCCCCGCTCCGCGTCGGTTCATCGGTTCCTCGGGGCAAGGATGTTCCCAGGTTGTTTGTGAGGAGAGTGTCTCTTTTTCACATCTTGTG
+
@@@DDDDDFFFFFIIIE8?FG)6@############################################################################
@DQNZZQ1:756:C3K7PACXX:6:1101:2359:2093 1:N:0:CCGTCC
TAAGATATTGGCAAGCAATATAGCTTTCTTCACGCGCCACACAGTTTCCCGGCTGTAGCGGTGACGACGGGGCAGACGGTGGAGGTGTTTCCTGCAGACT
+
@@@?DDFBFHGFD<@GGHCEHFCDHIHGHIIIIIFGIIGEFHGFD@DHFHBEBHGAC3)-99>?ABBB=@&5>;5889B0<<???8848<@@########
@DQNZZQ1:756:C3K7PACXX:6:1101:2319:2168 1:N:0:CCGTCC
AAGTTTAATAAGCAAACCCTGGGAACTGCGACGGTCTTCGGCACTGTCTACAAATGACGCGTCACAGAAGACCTCTAAACCTCGATCCAGTTATCGCTGT
+
==@4:BDBDBB?8AFGHIEHHIII;F3?1?FF?F0????C@FA;DEEGHEC;?=CADCB=A/3'5:@A>?CCC:>@A:49?A<B5>??CCA>>+>18?##
@DQNZZQ1:756:C3K7PACXX:6:1101:2337:2170 1:N:0:CCGTCC
GGCGACTGTGTTTGCCAAGATGGAGCGCGACCTGCGGCGGCCGGGTGCCGTGTTTGCCGAGGCGGGCGCACCCGCCCGCTGGGAGACGGGCCCCAACTAG
+
;=?DD:::DFCCCFGIGIIGGIBCHIIIID@GHIIIBEB>B@B@-)5??B05?AC9>AB5<77@####################################

谢谢你的帮助

中有一个名为
grouper
的配方,它完全符合您的要求:

你可以这样做

with open(sys.argv[1]) as forward: 
    for batch in grouper(forward, 4): 
        # do stuff with the iterator 
关于如何处理这些线,您有一些选择。例如,如果要连接它们,可以执行以下操作:

''.join(batch) 
甚至

sum(batch) 
''.join(batch) 
sum(batch)