【问题标题】:How do I display the the index of a list element in Python? [duplicate]如何在 Python 中显示列表元素的索引? [复制]
【发布时间】:2016-04-17 16:05:55
【问题描述】:

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

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

for item in hey:
    print(item)

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

1 lol
2 hey
3 water
4 pepsi
5 jam

【问题讨论】:

  • 请编辑您的问题,我什至无法编辑它
  • @Arman 我是新人,完成了吗?
  • 请注意答案中的所有“+1”。 Python 从索引 0 开始,而不是 1。所以正确的位置是 0、1、2、3、4

标签: python list python-3.x position


【解决方案1】:

解决这个问题的最好方法是枚举列表,它会给你一个包含索引和项目的元组。使用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

【讨论】:

  • 它们之间不需要空格,也加了空格
  • @Arman 谢谢!已更正。
  • @LeejaySchmidt 我在高中,所以你能解释一下 --hey.index(item)+1,item-- 是什么意思,我不明白你为什么放 --index( item)+1 你为什么把 --,item 放在最后
  • Python 中的数组从0 开始索引,因此您必须拥有index(item)+1 才能开始在1 而不是0 打印索引(否则您会得到0 lol 和@ 987654333@等)。 ,item 将项目的 string 表示与逗号前面的内容连接起来,否则它只会打印出索引。
  • @LeejaySchmidt 谢谢,非常感谢。
【解决方案2】:

简单:

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

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

【讨论】:

    【解决方案3】:

    使用enumerate内置方法的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
    

    【讨论】:

    • 你为什么把-V放在i,v中
    • @dragyitutorial what -V ?...i 是索引,v 是该索引处的项目...
    • @dragyitutorial,我已经将 v 替换为 item,现在有意义吗?
    • 好的,学到了一些东西,但是-V可以是另一个随机字母
    • 以及为什么我需要将项目放在索引处(抱歉愚蠢的问题)
    猜你喜欢
    • 2011-05-05
    • 2011-01-05
    • 2011-02-06
    • 2022-12-11
    • 1970-01-01
    • 2021-04-13
    • 1970-01-01
    • 2016-12-03
    • 1970-01-01
    相关资源
    最近更新 更多