Skip to content

Instantly share code, notes, and snippets.

@cavaunpeu
Created July 8, 2017 12:36
Show Gist options
  • Save cavaunpeu/d7ed89bf6600d76b5d15c4c478c6dec4 to your computer and use it in GitHub Desktop.
Save cavaunpeu/d7ed89bf6600d76b5d15c4c478c6dec4 to your computer and use it in GitHub Desktop.
recursively generate kmers
GENES = 'ATGC'
def generate_next_kmers(kmer, k=3, genes=GENES):
if k == 0:
yield kmer
else:
for gene in genes:
yield from generate_next_kmers(kmer + gene, k=k-1)
result = list( generate_next_kmers('') )
print(f'Result: \n{result}')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment