【发布时间】:2016-12-29 01:40:54
【问题描述】:
我是一个有搜索问题的初学者 Python 程序员。我需要在 DNA 文件中找到一串 DNA。问题是我不知道字符串出现在文件中的位置,它出现了两次,我需要知道这两个位置。我当前的程序只能找到第一个字符串,我很难让它继续搜索以找到第二个。我的两个想法都失败了,但我认为只是因为我不了解如何使用这些功能。他们在这里:
使用 .seek() 查找我需要的第一个 DNA 字符串,并将其设置为第二次搜索的起点。我的问题是我不知道 DNA 字符串的确切位置,所以我尝试将我的搜索位置设置为 DNA 字符串。但是,这不起作用,因为数据需要以字节为单位才能找到位置,而不是字符串。我尝试使用 .index() DNA 字符串的位置并将其设置为变量,但这也不起作用。
-
在找到第一个 DNA 字符串后,使用 .split() 拆分 DNA 文本文件,然后在中断的右半部分运行第二次搜索。我认为这会起作用,但我最终得到一个错误阅读:
IndexError: 列表索引超出范围
具体来说,我正在编写 .split('str')[1] 以使用字符串的后半部分。
假设我的逻辑在程序中是正确的,这些方法会起作用吗?有没有人有不同的想法,他们认为我应该尝试?
【问题讨论】:
-
欢迎来到 Stackoverflow。您会发布您的搜索和拆分方法是如何使用的吗?您是否编写了 seek 和 split,或者它们是现有 API 的一部分(生物信息学或其他)? (如果是前者,请贴出来。如果是后者,请告诉我们图书馆的名称。)
标签: python python-2.7 bioinformatics