Hi, The following code (luckily) partial achieved what I wanted, but I still have few questions:
#!/usr/bin/python3 import os.path INFILEEXT=".txt" OUTFILEEXT=".new" DICTIONARYFILE="dictionary.pdb" orig_dictionary={} new_dictionary={} abetaABresidues={} def processonefiledata(infilename): with open(infilename,"r") as f: for line in f: parts=line.strip().split() orig_dictionary[parts[0]]=parts[1] def build_abetadictionary(infilename,olddict): with open(infilename,"r") as f: for line in f: parts=line.strip().split() if parts[0] != "85CUR" and (parts[0] not in abetaABresidues.keys()): abetaABresidues[parts[0]]=0 for residues, numbers in abetaABresidues.items(): if residues in olddict.keys(): new_dictionary[residues]=olddict[residues] else: new_dictionary[residues]=0 with open(base+OUTFILEEXT,"w") as f: for residues, numbers in new_dictionary.items(): print(residues,numbers,file=f) ## Q1: How can I sort the results, like the effect of | sort -g from something like: 84ALA 12 : : 83ILE 28 : : to : 83ILE 28 84ALA 12 : if __name__=="__main__": for filename in os.listdir("."): base, ext =os.path.splitext(filename) if ext == INFILEEXT: print(filename) processonefiledata(filename) build_abetadictionary(DICTIONARYFILE,orig_dictionary) Thanks for any comments or suggestions you may give. The relevant testing file are attached below links: https://docs.google.com/open?id=0B93SVRfpVVg3YjdhNjlmYTAtMTdkYy00ZTNjLThkOWEtOGMyNTM1YTBiMmU4 https://docs.google.com/open?id=0B93SVRfpVVg3OWNiZmUwODktMDU4Ny00ZDUyLWExYzQtM2E2ZmY5NGJhNzgz https://docs.google.com/open?id=0B93SVRfpVVg3MTBmNTM3M2UtYjdiMC00N2UwLWE1YTQtNmU3OGQzOGYwNDc3 Best regards, _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor