Estoy tratando de crear una lista posible de codones dada una secuencia de proteínas.Trabajando con itertools.product y listas en python 3
Básicamente, el script que estoy tratando de crear procesará una entrada de cadena dada y generará una posible combinación de otro conjunto de cadenas que representa la entrada.
Por ejemplo, el carácter 'F' representa 'UUU' o 'UUC'; el carácter 'I' representa ya sea 'AUU', 'AUC' o 'AUA'.
Dada la entrada 'FI', el guión que estoy tratando de crear la Salida: 'UUUAUU', 'UUUAUC', 'UUUAUA', 'UUCAUU', 'UUCAUC', y 'UUCAUA'.
Actualmente estoy atascado con este código:
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)
Funciona cuando sustituyo pool
en itertools.product
con pool[0], pool[1]
. Pero no puedo encontrar la manera de hacerlo funcionar para que el usuario pueda ingresar una cadena con más de 2 caracteres (es decir, no para que tenga un código fijo).
¡Gracias de antemano por la ayuda!