python-3.x 如何将列表拆分为重复的节?

pftdvrlh  于 2023-02-01  发布在  Python
关注(0)|答案(1)|浏览(120)

如何将列表拆分为重复的部分,并将它们的索引存储在字典中它们的值旁边的原始行中?我知道这并不清楚,但我认为通过一个示例会更清楚
在本例中,我按字符分隔,但代码不应仅限于按字符分隔(例如,我还可以使用按'1'或''分隔)

s = 'hello world' 
res = {'h' : [0], 'e' : [1], 'l' : [2, 3, 9], 'o' : [4, 7], ' ' : [5], 'w' : [6], 'r' : [8]}
vq8itlhq

vq8itlhq1#

简单的方法是循环访问项并使用enumerate追加它们:

s = "hello world"
d = {}
for j, i in enumerate(s):
    if i in d:
        d[i].append(j)
    else:
        d[i] = [j]

结果是:

{'h': [0], 'e': [1], 'l': [2, 3, 9], 'o': [4, 7], ' ': [5], 'w': [6], 'r': [8], 'd': [10]}

相关问题