迭代索引为[duplicate]的字符串中的字符

问题描述 投票:2回答:5
让我用一个真实的代码示例来说明我的问题:

message = "hello" for char in message: print(char)

此程序输出为:

h e l l o

但是我想知道角色的位置。当我使用str.index()时,它变成:

message = "hello" for char in message: print(char, message.index(char))

输出:

h 0 e 1 l 2 l 2 o 4

L位置是2,而不是2和3!遍历此消息时如何获得角色位置?
python
5个回答
4
投票
.index()查找给定列表中元素的

first索引。如果它出现多次,则仅返回第一次出现。

如果要获取元素对及其各自的索引,则可以使用内置函数enumerate()

for idx, char in enumerate(message): print(char, idx)


1
投票
使用enumerate

message = "hello" for count, char in enumerate(message): print(char, count)


1
投票
尝试一下:

message = "hello" for i, char in enumerate(message): print(char, i)


1
投票
for i,char in enumerate(message): print(char,i)

1
投票
我用枚举调整了您的代码,应该可以使用

message = "hello" for index,char in enumerate(message): print(char,index)

您可以在官方python文档或here中找到有关此文档的一些文档>
© www.soinside.com 2019 - 2024. All rights reserved.