#!/usr/bin/python #-*- coding:utf-8 -*- "處理fasta文件,將ID號和序列放在一行" import sys with open(sys.argv[1]) as f: fw=open('out.fasta', 'w') line=f.read() line=line.replace('\n', '').replace('>', '\n>') for aa in line: fw.write(aa) fw.close() """ >chr1|hos107.1#gene1 ACACTCCCGGGCCCCCCCCCCCC ACCTTTCAAAAAAAAAAAAAAA AATTTTCCCCCCAAAGGGG >chr1|hos107.2#gene2 ACACTCCCGGGCCCCCCCCCCCC ACCTTTCAAAAAAAAAAAAAAA AATTTTC >chr1|hos107.4#gene3 ACACTCCCGGGCCCCCCCCCCCC ACCTTTCAAAAAAAAAAAAAAA AATTTTC >chr1|hos107.5#gene4 ACACTCCCGGGCCCCCCCCCCCC ACCTTTCAAAAAAAAAAAAAAA AATTTTC """ """ >chr1|hos107.1#gene1ACACTCCCGGGCCCCCCCCCCCCACCTTTCAAAAAAAAAAAAAAAAATTTTCCCCCCAAAGGGG >chr1|hos107.2#gene2ACACTCCCGGGCCCCCCCCCCCCACCTTTCAAAAAAAAAAAAAAAAATTTTC >chr1|hos107.4#gene3ACACTCCCGGGCCCCCCCCCCCCACCTTTCAAAAAAAAAAAAAAAAATTTTC >chr1|hos107.5#gene4ACACTCCCGGGCCCCCCCCCCCCACCTTTCAAAAAAAAAAAAAAAAATTTTC """ #提取目標序列 f=open('./out.fasta', 'r') fw=open('target.fasta', 'w') for line in f.readlines(): if line.startswith('>chr1|hos107.1'): fw.write(line) f.close() fw.close() """可以從上述處理好的單行文件out.fasta中提取指定目標ID的文件,並將其 寫入到target.fasta文件中""" #整體思路: #先統一fasta文件格式從test.fasta----out.fasta #取出目標ID序列:out.fasta----target.fasta