Python 我如何才能准确地看到字符串中的位置以及某个内容在列表中出现的次数

Python 我如何才能准确地看到字符串中的位置以及某个内容在列表中出现的次数,python,Python,假设我有一个列表:x=[1,2,4,4,6,7] 我怎样才能得到一个输出,告诉我4出现在x[2]和x[3]中?我不知道有任何内置函数可以实现这一点,但肯定可以通过列表理解来实现: indices = [i for i, num in enumerate(x) if num == 4] 您可以使用numpy数组来检查列表。如果值为4,它将显示“True”的索引,这意味着该索引的值为4。这适用于大型列表,并将返回真/假值。 以下是输出: [False False True True False

假设我有一个列表:
x=[1,2,4,4,6,7]


我怎样才能得到一个输出,告诉我4出现在
x[2]
x[3]
中?

我不知道有任何内置函数可以实现这一点,但肯定可以通过列表理解来实现:

indices = [i for i, num in enumerate(x) if num == 4]
您可以使用numpy数组来检查列表。如果值为4,它将显示“True”的索引,这意味着该索引的值为4。这适用于大型列表,并将返回真/假值。 以下是输出:

[False False  True  True False False]

如您所见,索引2和3返回True

您可以创建dict并捕获索引编号:

x = [1, 2, 4, 4, 6, 7]

def place_(value_,list_):
    d={}
    for i,j in enumerate(list_):
        if j==value_:
            if j not in d:
                d[j]=[i]
            else:
                d[j].append(i)
    return d


print(place_(4,x))
输出:

{4: [2, 3]}

这可能会重复回答问题的第二部分问题标题和实际问题不太同步!
{4: [2, 3]}