gpt4 book ai didi

python 列表作为嵌套列表的索引

转载 作者:太空宇宙 更新时间:2023-11-04 08:47:23 26 4
gpt4 key购买 nike

我有以下两个列表:

l1 = [2, 3, 2]
l2 = [0, [0, 1], [0, 1, 0, [0, 1, [0, 0]]]]

我如何使用第一个列表作为树索引,以便将一个项目 append 到第二个列表,就像做

l2[2][3][2].append(0) 

最佳答案

没有标准的方法可以做到这一点,但这会起作用:

from functools import reduce
from operator import getitem

def tree_index(tree, index):
return reduce(getitem, index, tree)

tree_index(l2, l1).append(0)

作为奖励,tree_index 函数也适用于字典和任何其他映射。例如:

>>> adjs = {'apple': ['red', 'green'], 'swallow': ['african', 'european'] }
>>> tree_index(adjs, ['apples', 0])
'red'

另一方面,tree_index 不适用于赋值。这是行不通的:

tree_index(l2, [1,1]) = 33 # throws SyntaxError

为了分配给树索引,您需要另一个函数或部分索引:

tree_index(l2, [1])[1] = 33

关于python 列表作为嵌套列表的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39036925/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com