我开始使用这种格式的文件:
cleanup = [part for part in [entry.replace('\n','') for entry in myFile]]
lefts = [part[0] for part in [entry.split(' ; ') for entry in cleanup]]
rights = [part[1] for part in [entry.split(' ; ') for entry in cleanup]]
myDict = defaultdict(list)
for left, right in zip(lefts, rights):
myDict[left].append(right)
我需要最后得到一个字典,其中键位于箭头的左侧,值来自右侧;如果右侧有多个字母,则它们会进入字典中的MULTIPLE值。
这是我目前的代码:
myDict = {'a': ['b'], 'b': ['c'], 'c': ['d,e']}
和我目前的结果:
{{1}}
这显然不是我想要的 - 我需要d和e在SEPARATE值空间中,但与一个键相关联,c。
提前谢谢。
答案 0 :(得分:1)
你非常关闭。你应该做的是当你带着right
方,在逗号上拆分 时。所以现在你应该有一个包含这些单独项目的列表:
['d', 'e']
然后,使用append
:
extend
for left, right in zip(lefts, rights):
myDict[left].extend(right.split(','))