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_Nested - Fatal编程技术网

Python 如何在列表中循环,在相同的索引位置找到值?

Python 如何在列表中循环,在相同的索引位置找到值?,python,list,nested,Python,List,Nested,我有一个包含智能手机应用程序信息的列表。每个列表(在列表中)都以相同的顺序包含相同类型的信息。 [id,name,…] 列表列表如下所示:[[id1,name1,…],[id2,name2,…] 我想访问每个列表中的第10个索引并检查其值 我试过这个,但不起作用。我想象这将迭代每个列表,除了第一个是标题,并选择每个列表中的第10个项目 应用程序中的c_评级[1:][10]: 打印(c_评级) 相反,它会打印出第10个列表中的每个项目 给出的解决方案是: 应用程序数据[1:]中的行的: c_评级

我有一个包含智能手机应用程序信息的列表。每个列表(在列表中)都以相同的顺序包含相同类型的信息。
[id,name,…]

列表列表如下所示:
[[id1,name1,…],[id2,name2,…]

我想访问每个列表中的第10个索引并检查其值

我试过这个,但不起作用。我想象这将迭代每个列表,除了第一个是标题,并选择每个列表中的第10个项目

应用程序中的c_评级[1:][10]: 打印(c_评级) 相反,它会打印出第10个列表中的每个项目

给出的解决方案是:

应用程序数据[1:]中的行的
:
c_评级=第[10]行
打印(c_评级)

我理解这段代码的工作原理。它将过程分为两个步骤。我不明白为什么第一个代码不起作用。任何帮助都将不胜感激

这是由于python表达式的求值顺序。
apps\u数据[1:][10]
按以下顺序计算:

  • apps\u data[1::][/code>->这提供了一个内部列表列表,其中包含除第一个内部列表以外的所有内部列表。让我们称之为
    内部列表

  • 内部列表[10]
    ->这是列表列表中的第10个元素。这会给你一个内部列表

因此,您将以选择+选择结束

您需要的是迭代+选择。您可以这样做:

[print(x[10]) for x in apps_data]

这将遍历所有的内部列表,从每个列表中选择第10个元素并打印出来

您的iterable对象是
apps\u data[1:[10]
。这意味着
for
循环正在迭代
apps\u data[1://code>中的第10项。这是我在@berkelem所想的,但不是它打印出来的。它打印出[id10,name10,…]。所以,它打印第十个列表,而不是所有列表中的第十个项目。你知道这是如何在一行中完成的,还是必须像在解决方案中那样分成两行?我就是这么说的。你的表中的第十项是第十项。如果需要,您可以通过为应用程序数据[1:]中的行写入
:print(行[10])
删除一行