import csv fasta = "RefSeq_pouf_2.txt" listinput = [] with open(fasta, 'r') as myfile: for row in myfile: if "Contig" in row: listinput.append(row) list2 = [] for row in listinput: info = row[:-2] list2.append(info) namedict = {} for row in list2: place = row.find(',') key = row[1:place] newname = row[place+1:] newnamenew = newname.replace(' ','_') place2 = key.find('_') addition = key[:place2+1] newnamenew2 = addition + newnamenew if namedict.get(key, 'N/A') != 'N/A': print key, "is already in the dict" namedict[key] = newnamenew2 with open ('POUFreference.csv', 'w') as myportal: filewriter = csv.writer(myportal) for key in namedict: row = key, namedict[key] filewriter.writerow(row)