gpt4 book ai didi

python - 两个序列中相同对象的计数

转载 作者:行者123 更新时间:2023-12-01 02:32:43 25 4
gpt4 key购买 nike

我在学习 Python 3 的过程中遇到了很大的困难,现在我正在为这个练习而苦苦挣扎。

我必须编写一个带有两个参数的函数:

1) 一个字符串,它是 DNA 序列。

2) 与参数一长度相同的字符串(也是 DNA 序列)

该函数必须返回一个 float (两个 DNA 序列中相同碱基的比例)。

所以,我知道我必须编写一个函数来返回如下所示的内容:

seq_similarity("ATGC","AGTT")

应该返回

0.75

我才走到这一步,现在我在开始之前就陷入了困境:

def sequence_similarity(seq1,seq2):
seq1="AGTC"
seq2="AGTT"

你能帮我开始吗?

最佳答案

您可以使用sum并给它一个条件:

sum(x==y for (x,y) in zip(seq1, seq2))

这表示你的两个字符串都是 3。

然后除以长度:

sum(x==y for (x,y) in zip(seq1, seq2))/len(seq1)

如果使用 2.x,请注意整数:

sum(x==y for (x,y) in zip(seq1, seq2))/float(len(seq1))

关于python - 两个序列中相同对象的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46620091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com