在python中的同一项内出现计数器

对不起,我很确定其他人可能已经问过这个问题,但我没找到.我想跟踪我看过这个特定项目的次数

输入:

[88,88,27,0,88]

期望的输出:

[1,2,1,1,3]

我正在寻找在性能方面特别好的东西.
我对Numpy或Pandas解决方案没问题.

最佳答案

lst = [8,1,2,3,1,3,3,1,2,99]

cnt = {}
res = []

for x in lst:
    cnt[x] = cnt.get(x,0)+1
    res += [cnt[x]]

print(res)

产量

点赞