python 寻找序列子串

假设 我有一个字符串 ,或者是列表,我要寻找它的子串 的位置

a = '10101111101'
b = [12,1,34,52,12,44,12,21]
c = 'abcddcdaddd'

a 字符串 我要寻找它的 11 子串 并打印出该序列出现的子串起始位置 应该返回 4,6

b 列表 12子串 应该 返回 0,4,6

c 字符串 dd子串 应该返回 3,8

img

def get_index(data, content):
    indexall = []
    if type(data) == list:
        data =[str(i) for i in data]
    content = str(content)
    while data.count(content) >=1:
        index = data.index(content)
        indexall.append(index)
        if type(data) == str:
            data = list(data)
            data[index:index+len(str(content))] = '*' * len(str(content))
            data = ''.join(data)
        else:
            data[index:index+len(str(content))] = '*' * len(str(content))
        # print(data)
    return indexall

a = '10101111101'
print(get_index(a, '11'))
b = [12,1,34,52,12,44,12,21]
print(get_index(b, 12))
c = 'abcddcdaddd'
print(get_index(c, 'dd'))



find方法和index方法可解决,而且c没有9吗