如何在Python中显示列表元素的索引?

2024-06-06 11:40:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个家庭作业。我有以下代码

hey = ["lol", "hey","water","pepsi","jam"]

for item in hey:
    print(item)

我是否在项目前显示列表中的位置,如下所示:

1 lol
2 hey
3 water
4 pepsi
5 jam

Tags: 项目代码in列表foritemprintjam
3条回答

假设你在Python 3

hey = ["lol","hey","water","pepsi","jam"]

for item in hey:
    print(hey.index(item)+1,item)

如果您在Python 2中,请将print()替换为print语句:

hey = ["hey","water","pepsi","jam"]

for item in hey:
    print hey.index(item)+1,item

使用<list>.index(<item>)将获得该项的索引。

但是,如前所述,这是低效的(因为它在每次迭代中都会进行查找),如果存在重复项,则不起作用。更好的方法是使用enumerate,因为它可以防止这两个问题。具体做法如下。

Python 3中:

for (i, item) in enumerate(hey, start=1):
    print(i, item)

或者在Python 2中:

for (i, item) in enumerate(hey, start=1):
    print i, item

如果需要知道正在使用的Python版本,请在命令行中键入python --version

使用内置方法的start参数:

>>> hey = ["lol", "hey","water","pepsi","jam"]
>>> 
>>> for i, item in enumerate(hey, start=1):
    print(i,item)


1 lol
2 hey
3 water
4 pepsi
5 jam

简单:

hey = ["lol","hey","water","pepsi","jam"]

for (num,item) in enumerate(hey):
    print(num+1,item)

相关问题 更多 >