Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.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

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

Python 我不知道';无法理解此处的操作:对于索引,枚举(选项)中的项:

Python 我不知道';无法理解此处的操作:对于索引,枚举(选项)中的项:,python,list,for-loop,enumerate,Python,List,For Loop,Enumerate,我目前正在通过Codecademy学习Python。其中一个练习在其for循环中使用此选项: choices = ['pizza', 'pasta', 'salad', 'nachos'] print 'Your choices are:' for index, item in enumerate(choices): print index + 1, item 我只见过这样的事情: for i in list: 也就是说,我不明白循环的“索引”部分是什么,或者它的函数是什么。据我所

我目前正在通过Codecademy学习Python。其中一个练习在其for循环中使用此选项:

choices = ['pizza', 'pasta', 'salad', 'nachos']

print 'Your choices are:'
for index, item in enumerate(choices):
    print index + 1, item
我只见过这样的事情:

for i in list:

也就是说,我不明白循环的“索引”部分是什么,或者它的函数是什么。据我所知,它将索引列表中的每个项目,并打印它们。提前感谢。

枚举返回列表中项目的索引和项目本身。Python列表中的每个项(以及几乎任何编程语言中的任何列表)除了包含的值之外,还有一个数字索引。在Python中,索引从0开始。因此,对于您的
选择
列表,
比萨
有索引
0
意大利面
1
沙拉
2
玉米片
3
。此索引的存在允许您直接访问列表的第n个值,而不必循环访问它(以及其他用途)

以下是执行代码时的操作:

Your choices are:
1 pizza    # Pizza has index 0, and you added 1
2 pasta    # Index 1
3 salad    # Index 2
4 nachos   # Index 3

枚举
为列表中从0开始的每个项目添加索引或位置值

因此,在您的示例中,
pizza
的索引为0,
意大利面
的索引为1,依此类推

然后,您的
for
语法与获取当前项的索引和值略有不同


因此,第一次通过循环,您将拥有
索引=0
项='pizza'

枚举生成
元组的
列表,这些元组是
(索引,元素)

l = ['thing', 'foo', 'bar', 'doodad']
list(enumerate(l))
这是
enumerate

[(0, 'thing'), (1, 'foo'), (2, 'bar'), (3, 'doodad')]
您可以
解压缩这些元组,并对元组的每个组件执行任何操作

for index, element in enumerate(l):
    print 'index', index
    print 'element', element

index 0
element thing

index 1
element foo

index 2
element bar

index 3
element doodad

它来自enumerate:,”文档中描述的
enumerate
内置函数。我认为文档描述得非常清楚,因此建议您在那里阅读。

阅读关于比萨饼索引0
意大利面索引1
等的文档。。