Я пытаюсь рассчитать содержание GC (в%) последовательности ДНК для вопроса Rosalind. У меня есть следующий код, но он возвращает 0 или только количество G в одиночку или только C (без процентов).Начальный скрипт Python для вычисления содержания GC в последовательности ДНК
x = raw_input("Sequence?:").upper()
total = len(x)
c = x.count("C")
g = x.count("G")
gc_total = g+c
gc_content = gc_total/total
print gc_content
Я также попытался это, просто чтобы получить количество G и С., а не процент, но он просто возвращает счетчик всей строки:
x = raw_input("Sequence?:").upper()
def gc(n):
count = 0
for i in n:
if i == "C" or "G":
count = count + 1
else:
count = count
return count
gc(x)
EDIT: я констатировала typo в заявлении печати в первом примере кода. Это не проблема, я просто вставил неправильный фрагмент кода (было много попыток ...)
Первый может быть опечатка, но вы сказали 'cg_content' вместо 'gc_content'. Во втором примере нет необходимости в выражении else. – squiguy
Я исправил его в редактировании. Это был не корень проблемы, я просто вложил неправильный блок кода из моих многочисленных попыток, пытающихся по-разному. – jstewartmitchel