Tôi đang cố gắng tạo một danh sách các codon có thể cho một chuỗi protein.Làm việc với itertools.product và các danh sách trong python 3
Về cơ bản, tập lệnh tôi đang cố gắng tạo sẽ xử lý chuỗi đầu vào đã cho và xuất ra một kết hợp có thể có của một bộ chuỗi khác mà đầu vào đại diện. Ví dụ: ký tự 'F' đại diện cho 'UUU' hoặc 'UUC'; ký tự 'Tôi' đại diện cho 'AUU', 'AUC' hoặc 'AUA'.
Với đầu vào 'FI', tập lệnh tôi đang cố gắng tạo nên: 'UUUAUU', 'UUUAUC', 'UUUAUA', 'UUCAUU', 'UUCAUC' và 'UUCAUA'.
tôi đang mắc kẹt với mã này:
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)
Nó hoạt động khi tôi thay pool
trong itertools.product
với pool[0], pool[1]
. Nhưng tôi không thể tìm ra cách làm cho nó hoạt động để người dùng có thể nhập một chuỗi có nhiều hơn 2 ký tự (tức là không làm cho nó được mã hóa cứng).
Cảm ơn bạn đã trợ giúp!