Этот фрагмент взят из моей книги "Python для биологов":
genomic = open("genomic_dna.txt").read()
exons = open("exons.txt")
for line in exons:
positions = line.split(',')
start = int(positions[0])
stop = int(positions[1])
exons = genomic[start:stop]
coding_seq = coding_seq + exon
print("Coding sequence is: " + coding_seq)
Согласно книге, это должно работать, но когда я запускаю его, я получаю ошибку имени "coding_seq не определен".
Как я понимаю, python - динамический язык, поэтому я не должен явно объявлять coding_seq, прежде чем использовать его в цикле. Почему этот код не работает правильно?
Вы должны определить coding_seq сначала
genomic = open("genomic_dna.txt").read()
exons = open("exons.txt")
coding_seq = ""
for line in exons:
positions = line.split(',')
start = int(positions[0])
stop = int(positions[1])
exons = genomic[start:stop]
coding_seq = coding_seq + exon
print("Coding sequence is: " + coding_seq)