如何使用python [with Duplicates]查找列表中序列的长度?

gok*_*oks -1 python

我正在尝试下面的代码.

from itertools import groupby

range_mod = ['P', 'P', 'P', 'P', 'N', 'N', 'N', 'N', 'P', 'P', 'P']

print(dict((i,len(list(j))) for i, j in groupby(range_mod)))
Run Code Online (Sandbox Code Playgroud)

注意:输出不必在Dict中

实际产量:

{'P': 3, 'N': 4}
Run Code Online (Sandbox Code Playgroud)

预期输出:我知道Dictionary不允许重复键.所以寻找其他选择

{'P': 4, 'N': 4, 'P' : 3}
Run Code Online (Sandbox Code Playgroud)

提前致谢.

小智 8

>>> print(list((i,len(list(j))) for i, j in groupby(range_mod)))
[('P', 4), ('N', 4), ('P', 3)]
Run Code Online (Sandbox Code Playgroud)

这个怎么样?^