给定一个字符串,找出其中所有子串,这可能是暴力查找回文的第一步,如:
>>> s = 'abc'
>>> [s[i:i + x + 1] for x in range(len(s)) for i in range(len(s) - x)]
['a', 'b', 'c', 'ab', 'bc', 'abc']
注 可以看出,不需要去重,因为不会产生重复,而且还很有序。
相当于:
def cut(s: str):
results = []
# x + 1 表示子字符串长度
for x in range(len(s)):
# i 表示偏移量
for i in range(len(s) - x):
results.append(s[i:i + x + 1])
return results
print(cut('abc'))