【发布时间】:2014-01-15 10:34:52
【问题描述】:
我想对来自特定索引的字符串使用迭代器,该索引不是开头,而不使用切片。有没有办法做到这一点?我正在使用 python 3.2
编辑: 我需要编写一个生成器函数,该函数获取 2 个参数:一个可迭代的迭代器,它由可能是无限的字符和一个模式组成。 该函数需要返回迭代中模式开始出现的索引。对于剩下的问题,我将生成器命名为 g。 如果pattern长度为m,则func的效率应该是O(m)
例如:字符串:abababab,模式:abab
所以我们会得到:
下一个(g)
0
下一个(g)
2
下一个(g)
4
【问题讨论】:
-
因为我必须多次这样做,它不会有效率
-
@CnR 你为什么这么认为?您是否对效率进行了基准测试?
-
您是否尝试过自己解决问题?您可以提供的任何代码都会对帮助您的人有所帮助。
-
你研究过吗?你发现了什么?
-
除非字符串很大,否则我怀疑你能比字符串切片更快。
标签: python string python-3.x iterator