2024-03-29 10:21:43 发布
网友
我有一个文件,其中有几行SAMfields,包含不同制表符分隔字段中的信息和DNA序列。每一行都是唯一的样本,但是每两行都是耦合的(成对的),所以我想同时从两行中提取信息。你知道吗
虽然我可以很容易地从这些字段中逐行提取信息,但我希望有一种同时分析这两行的方法。有没有一个循环(或者一行一行地操作循环)来完成这个任务?你知道吗
你可以用itertools做你想做的事想要更多特别是izip。我想它会对你有好处,因为它对记忆友好,而且你可以挖掘DNA数据。你知道吗
import itertools with open(file) as f: for l,j in itertools.izip(f,f): print l,j
您可以用所有奇数行压缩所有偶数行。所以,你可以做:
with open(myFile) as inputFile: for sequence in zip(inputFile[::2], inputFile[1::2]): print(sequence) # prints lines 0,1 then lines 2,3 etc.
更灵活的方法是使用发电机:
def line_pairs(file): file_iter = iter(file) while True: line1 = next(file_iter) line2 = next(file_iter) yield (line1, line2) for line1, line2 in line_pairs(file): # do what you want with line1 and line2 available at the same time
现在,如果您意识到需要特别处理某些行(例如,带空白行),您可以修改生成器。你知道吗
你可以用itertools做你想做的事想要更多特别是izip。我想它会对你有好处,因为它对记忆友好,而且你可以挖掘DNA数据。你知道吗
您可以用所有奇数行压缩所有偶数行。所以,你可以做:
更灵活的方法是使用发电机:
现在,如果您意识到需要特别处理某些行(例如,带空白行),您可以修改生成器。你知道吗
相关问题 更多 >
编程相关推荐