【发布时间】:2019-07-03 19:54:09
【问题描述】:
我最近刚开始使用 python,我对 python 和一般编码非常陌生,我在一个班级中,我们被分配在 Python 中找到一个需要两个 DNA 序列字符串的函数(比如string1 和 string2) 作为输入,并返回 string2 作为 string1 的子字符串存在的位置列表。而且由于我们应该熟悉编码是如何工作的,所以我们不能使用“find”内置函数。我真的很困惑如何开始这个问题。但这就是我目前所拥有的:
def linear(seq, sub):
positions = [0]
for i in range(len(sub)):
if seq[i:i+len(sub)] == sub:
positions[0]+=1
return( positions )
当我把它放进去时我得到一个错误,但我应该得到一个子字符串出现位置的列表。如果有人可以指导我应该朝哪个方向前进,那将非常有帮助。
例如,如果序列是'ATTCCATGGACCTAGTCAT'并且我要查找的子字符串是'CAT',那么输出应该是[5,17]
【问题讨论】:
-
既然这是一个作业,没有人会给你答案。具体来说,请提供您收到的错误,有人可能会帮助您解决错误。
标签: python string list substring linear-search