Python 求字符串集的所有子串
查找字符串集合的所有子字符串,如'ABC'子字符串'a ', 'B', 'C', 'ab', 'BC'和'ABC'。现在的想法是根据位控制长度遍历所有字符串,并在判断重复后将它们写入列表。但是,如果字符串长度太长,次数太多,那么循环的次数就会太多,程序就不会运行。我希望你能给一些建议。谢谢你!#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Python 3.6
from itertools import accumulate
def all_sub_string(a_string):
if len(a_string) == 1:
return
else:
return list(accumulate(a_string)) + all_sub_string(a_string)
print(all_sub_string('abcde')) 是遍历长度,然后可以组合,有函数可用 def subsets(nums):
res = []
def backtrack(nums, tmp):
res.append(tmp)
for i in range(len(nums)):
backtrack(nums, tmp+])
backtrack(nums, [])
return res
页:
[1]