【发布时间】:2017-08-18 05:28:25
【问题描述】:
我很难实现我需要实现的目标,所以我想知道这里是否有人可以帮助我:-)
我看过示例 11.4。 (列出成员资格)在http://openbookproject.net/thinkcs/python/english3e/lists.html 上,这在某些方面非常接近我的目标。
项目是:
-
从引用 (key, [list of values]) 的元组列表开始
my_list = [('a',[0]), ('b',[1]), ('c',[2]), ('a',[3])] -
我想扫描“my_list”以附加嵌套列表,将 值列表组合为仅一个 键,如下所示:
my_list = [('a',[0, 3]), ('b',[1]), ('c',[2])] 我成功地手动组合了值,但我想自动化它,但我找不到如何去做! ^^
-
现在,这是我所拥有的:
# my_input == 'a b c a' #splitting input to list >>> raw_list = my_input.split() >>> raw_list ['a', 'b', 'c', 'a'] #getting an enumeration for each entry #### (in order of appearance, this is important!) #### >>> enum_list = [(b,[a]) for a, b in enumerate(raw_list)] >>> enum_list [('a', [0]), ('b', [1]), ('c', [2]), ('a', [3])] #trying to append the enum value of the second 'a' to the first tuple of 'a' >>> for (x, y) in enum_list : ... for (x, z) in enum_list : ... enum_list[enum_list.index((x, z))][1].append(y) ... >>> enum_list [('a', [0, [...], [1, [...], [...], [2, [...], [...], [...], [3, [...], [...], [...], [...]]], [3, [...], [...], [2, [...], [...], [...], [...]], [...]]], [2, [...], [1, [...], [...], [...], [3, [...], [...], [...], [...]]], [...], [3, [...], [1, [...], [...], [...], [...]], [...], [...]]], [3, [...], [1, [...], [...], [2, [...], [...], [...], [...]], [...]], [2, [...], [1, [...], [...], [...], [...]], [...], [...]], [...]]]), ('b', [1, [0, [...], [...], [2, [...], [...], [...], [3, [...], [...], [...], [...]]], [3, [...], [...], [2, [...], [...], [...], [...]], [...]]], [...], [2, [0, [...], [...], [...], [3, [...], [...], [...], [...]]], [...], [...], [3, [0, [...], [...], [...], [...]], [...], [...], [...]]], [3, [0, [...], [...], [2, [...], [...], [...], [...]], [...]], [...], [2, [0, [...], [...], [...], [...]], [...], [...], [...]], [...]]]), ('c', [2, [0, [...], [1, [...], [...], [...], [3, [...], [...], [...], [...]]], [...], [3, [...], [1, [...], [...], [...], [...]], [...], [...]]], [1, [0, [...], [...], [...], [3, [...], [...], [...], [...]]], [...], [...], [3, [0, [...], [...], [...], [...]], [...], [...], [...]]], [...], [3, [0, [...], [1, [...], [...], [...], [...]], [...], [...]], [1, [0, [...], [...], [...], [...]], [...], [...], [...]], [...], [...]]]), ('a', [3, [0, [...], [1, [...], [...], [2, [...], [...], [...], [...]], [...]], [2, [...], [1, [...], [...], [...], [...]], [...], [...]], [...]], [1, [0, [...], [...], [2, [...], [...], [...], [...]], [...]], [...], [2, [0, [...], [...], [...], [...]], [...], [...], [...]], [...]], [2, [0, [...], [1, [...], [...], [...], [...]], [...], [...]], [1, [0, [...], [...], [...], [...]], [...], [...], [...]], [...], [...]], [...]])] 很抱歉这行太长了,但我认为它会更符合整个错误...
如果我不够清楚,请不要犹豫,告诉我,我会提供更多详细信息。
感谢您的时间和解释 :-)
【问题讨论】:
标签: python list indexing tuples