from collections import Counter
def contacodon(seq):
stops = ["TAA", "TAG", "TGA"]
count = Counter()
for i in range(seq.find('ATG'), len(seq) + 1, 3):
codon = seq[i: i + 3]
count.update([codon])
if codon in stops:
break
return dict(count)
seq = "GCGATCGAGATGAGCATCGCATCGCGGACTACCGCGCGCGCGCGCGGGAGATGAGCATCGACGACTCGACTAG"
print(contacodon(seq))
ZnJvbSBjb2xsZWN0aW9ucyBpbXBvcnQgQ291bnRlcgoKCmRlZiBjb250YWNvZG9uKHNlcSk6CiAgICBzdG9wcyA9IFsiVEFBIiwgIlRBRyIsICJUR0EiXQogICAgY291bnQgPSBDb3VudGVyKCkKICAgIGZvciBpIGluIHJhbmdlKHNlcS5maW5kKCdBVEcnKSwgbGVuKHNlcSkgKyAxLCAzKToKICAgICAgICBjb2RvbiA9IHNlcVtpOiBpICsgM10KICAgICAgICBjb3VudC51cGRhdGUoW2NvZG9uXSkKICAgICAgICBpZiBjb2RvbiBpbiBzdG9wczoKICAgICAgICAgICAgYnJlYWsKICAgIHJldHVybiBkaWN0KGNvdW50KQoKCnNlcSA9ICJHQ0dBVENHQUdBVEdBR0NBVENHQ0FUQ0dDR0dBQ1RBQ0NHQ0dDR0NHQ0dDR0NHR0dBR0FUR0FHQ0FUQ0dBQ0dBQ1RDR0FDVEFHIgpwcmludChjb250YWNvZG9uKHNlcSkpCg==
{'ATG': 1, 'AGC': 1, 'ATC': 1, 'GCA': 1, 'TCG': 1, 'CGG': 1, 'ACT': 1, 'ACC': 1, 'GCG': 2, 'CGC': 2, 'GGG': 1, 'AGA': 1, 'TGA': 1}