Ich versuche, eine mögliche Liste von Codons mit einer Proteinsequenz zu erstellen.Arbeiten mit itertools.product und Listen in Python 3
Im Grunde wird das Skript, das ich erstellen möchte, eine gegebene String-Eingabe verarbeiten und eine mögliche Kombination einer anderen Menge von Strings ausgeben, die die Eingabe repräsentiert.
Zum Beispiel steht das Zeichen 'F' entweder für 'UUU' oder 'UUC'; das Zeichen "I" steht entweder für "AUU", "AUC" oder "AUA".
der Eingang 'FI' Da, das Skript, das ich ausgeben sollte erstellen bin versucht: 'UUUAUU', 'UUUAUC', 'UUUAUA', 'UUCAUU', 'UUCAUC' und 'UUCAUA'.
bin ich zur Zeit mit diesem Code fest:
import itertools
F = ['UUU', 'UUC']
I = ['AUU', 'AUC', 'AUA']
seq, pool = 'FI', []
for i in seq:
pool.append(eval(i))
for n in itertools.product(pool):
print(n)
Es funktioniert, wenn ich pool
in itertools.product
mit pool[0], pool[1]
ersetzen. Aber ich kann nicht herausfinden, wie es funktioniert, damit der Benutzer eine Zeichenfolge mit mehr als 2 Zeichen eingeben kann (d. H. Nicht fest codieren).
Vielen Dank im Voraus für die Hilfe!