str1 = "ABCDEF"
我想在上述字符串中找到长度为3的所有子字符串的列表,包括重叠。例如:
list1 = ['ABC','BCD','CDE','DEF']
我尝试了以下操作,但是错过了重叠部分:
n = 3
lst = [str1[i:i+n] for i in range(0, len(str1), n)]
x = "ABCDEF"
print ([x[i:i+3] for i in range(len(x)-2)])
输出:
['ABC', 'BCD', 'CDE', 'DEF']
更普遍:
x = "ABCDEF"
n = 2
print ([x[i:i+n] for i in range(len(x)-n+1)])
输出:
['AB', 'BC', 'CD', 'DE', 'EF']
更一般地说:
x = "ABCDEF"
for n in range(len(x)+1):
print ([x[i:i+n] for i in range(len(x)-n+1)])
输出:
['', '', '', '', '', '', '']
['A', 'B', 'C', 'D', 'E', 'F']
['AB', 'BC', 'CD', 'DE', 'EF']
['ABC', 'BCD', 'CDE', 'DEF']
['ABCD', 'BCDE', 'CDEF']
['ABCDE', 'BCDEF']
['ABCDEF']
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句