擅长:python、mysql、java
<p>这很可怕,但是(我只添加了偏移量,从偏移量列表中可以得到的出现次数)。是的,也许可以</p>
<pre><code>In [83]: my_str = 'abcdabcxdabc'
In [84]: n=3
In [85]: {substr: [my_str.replace(substr, ' '*n, c).index(substr)
for c in xrange(my_str.count(substr))]
....: for substr in set(my_str[idx:idx+n] for idx in xrange(len(my_str)-n))}
Out[85]:
{'abc': [0, 4, 9],
'bcd': [1],
'bcx': [5],
'cda': [2],
'cxd': [6],
'dab': [3, 8],
'xda': [7]}
</code></pre>