Python 列表操作 寻找列表里面相同的元素并把所有相同元素的下标都打印出来

#Python 列表操作 寻找列表里面相同的元素并把所有相同元素的下标都打印出来
a = [1, 2, 3, 11, 2, 4, 5, 6, 11, 2, 1, 4, 11, 7, 8, 5, 9, 11]

b = ['a', 'kk', 'b', 'c', 'kk', 'd', 'e', 'f', 'kk', 'g']

c = [[1, 2, 3, ], [1, 1, 1, 1], [4, 5, 6, 7], [8, 9, 10, 11], [1, 1, 1, 1]]


for i in a:
    if i == 11:
        print(b.index(i))

我试着用index()函数来寻找下标,但是它只返回了该元素的第一个下标,怎么样才能返回全部的下标?

"""
比如 a 列表里面的 11元素
理想返回结果
11(3,8,12,17)

b 列表 的 'kk'
kk (1,4,8)

c列表的 [1, 1, 1, 1]

[1, 1, 1, 1] (1,4)
"""

这个没必要这么死板一定要用index吧, 就你的代码来说, 稍微更改下:

same_index_list = []
a = [1, 2, 3, 11, 2, 4, 5, 6, 11, 2, 1, 4, 11, 7, 8, 5, 9, 11]
for i in range(len(a)):
    if a[i] == 11:
       same_index_list.append(i)

这样可以么?