jst*_*hel 2 python function rosalind
我正在尝试计算 Rosalind 问题的 DNA 序列的 GC 含量(以%为单位)。我有以下代码,但它返回 0,或者仅返回 G 的数量或单独的 C 的数量(无百分比)。
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
Run Code Online (Sandbox Code Playgroud)
我也尝试过这个,只是为了获取 G 和 C 的计数,而不是百分比,但它只是返回整个字符串的计数:
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)
Run Code Online (Sandbox Code Playgroud)
编辑:我修复了第一个代码示例中 print 语句中的拼写错误。这不是问题,我只是粘贴了错误的代码片段(有很多尝试......)
您的问题是您正在执行整数除法,而不是浮点除法。
尝试
gc_content = gc_total / float(total)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27003 次 |
| 最近记录: |