我一直试图在ACGT基因组中拉中值字符串搜索序列。我遇到的问题是AAAAAAAA到AAAAAAAC等等,直到我尝试了所有可能的组合。
通过创建两个列表,一个包含A,C,G,T和另一个包含8个字符的序列,以及每次搜索迭代和交换字符后,我基本上都在蛮力。问题是我没有测试所有组合,因为当两个迭代同时它跳过一个字母时。有没有办法轻松去AAAAAAAA - AAAAAAAC - AAAAAAAG - AAAAAAAT - AAAAAACA等等?
答案 0 :(得分:10)
itertools.product("ACGT", repeat=8)
答案 1 :(得分:2)
如上所述使用itertools,
itertools.product("ACGT", repeat=8) # will work in your case.
答案 2 :(得分:1)
使用pyparsing wiki示例页面中的regex inverter,反转此正则表达式:[ACGT]{8}
。你也可以尝试online inverter at the UtilityMill,但是这个服务器在生成8个字符的字符串时会超时,但我在允许的时间内成功获得了6个字符。