Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用特定索引从嵌套列表中提取值_Python_List_Indexing_Nested Lists - Fatal编程技术网

Python 使用特定索引从嵌套列表中提取值

Python 使用特定索引从嵌套列表中提取值,python,list,indexing,nested-lists,Python,List,Indexing,Nested Lists,因此,我基本上有一个嵌套列表,它将不断变化,但例如,它将如下所示: [9,1,[3,5][3]] [2,1] 然后我还得到一个生成的索引,其格式如下: [9,1,[3,5][3]] [2,1] 因此,在索引[2,1]处,值为“5”,但如何编写代码来自动提取该值?列表将不断变化,索引也将不断变化(将始终是有效的索引),因此我不能只使用嵌套for循环。有什么简单的方法可以做到这一点吗?您可以遍历所需的索引,并使用.pop()使用其索引提取元素 L = [9,1,[3,5],[3]]

因此,我基本上有一个嵌套列表,它将不断变化,但例如,它将如下所示:

[9,1,[3,5][3]] 
[2,1] 
然后我还得到一个生成的索引,其格式如下:

[9,1,[3,5][3]] 
[2,1] 

因此,在索引
[2,1]
处,值为“5”,但如何编写代码来自动提取该值?列表将不断变化,索引也将不断变化(将始终是有效的索引),因此我不能只使用嵌套for循环。有什么简单的方法可以做到这一点吗?

您可以遍历所需的索引,并使用
.pop()
使用其索引提取元素

L = [9,1,[3,5],[3]]
idx = [2,1]

for i in idx:
    L = L.pop(i)
print(L)
输出


5

如果您的索引在维度上没有变化,您可以使用硬编码的值吗? 如果它们正在更改,您可以使用索引进行迭代并弹出项目,直到达到项目索引为止

lst = [9, 1, [3, 5], [3]]
idx = [2, 1]

print(lst[idx[0]][idx[1]])

// or 
for i in idx:
    lst = lst.pop(i)


L
复制到
c
并循环
索引
,在每个循环中,您将获得更深的一级,直到达到最终值

L=[9,1,3,5,3]]
指数=[2,1]
c=L.copy()
对于指数中的i:
c=c[i]
印刷品(c)#5

只需在生成的索引上循环,并从嵌套列表中获取与循环中当前索引匹配的元素