# MSU FBB. Bioinformatics. Term 1. Block 2. Practice 7. Task 2. # From_fasta_to_fasta v2.3 # Author: Lozinskiy.Y.N. # Last modification date: 26.10.2013 14:16 class Protein: ID = "" description = "" sequence = "" def __init__(self,i,d,s): self.ID = i self.description = d self.sequence = s def print_fasta (self,z): new_line = "" a = 1 for el in range(len(self.sequence)): if a < int(z): new_line = new_line + self.sequence[el] a += 1 else: new_line = new_line + self.sequence[el]+"\n" a = 1 print ">" + self.ID + " " + self.description print new_line fasta = "NC_000854.faa" #you should write here a name of your fasta file op_fasta = open(fasta) description = "" protein_list = list() save_ID = "" save_description = "" save_sequence = "" protein = "" number = raw_input (" Please enter a number of letters in a line: \n") for line in op_fasta: new_line=line.strip("\n") new_line=new_line.strip("\r") if len(new_line.strip()) == 0: continue if new_line[0] == ">": if (save_ID != "") and (save_description != "") : protein = Protein(save_ID, save_description, save_sequence) protein_list.append(protein) save_sequence = "" new_line = new_line.split(None,1) save_ID = new_line[0].strip(">") if len(new_line[1]) > 0: save_description = new_line[1].replace(" ","") else: save_description = "None" else: new_line = new_line.replace(" ","") save_sequence = save_sequence + new_line protein = Protein(save_ID, save_description, save_sequence) protein_list.append(protein)