如何解决遍历字符串,需要该字符串的索引
Python新手。我正在遍历字符串,并且需要能够索引字符串中每个字符的位置。但是,.index()
只是第一次让我弹出该字符,我需要我要遍历的确切字符的位置。
string = "AT ST!"
for i in string[1:]:
ind = string.index(i) #only finds first instance
quote = string[ind-1] + i
print(quote)
比方说我要这个回来
AT
T
S
ST #what I want
T!
但是它将返回
AT
T
S
AT #heck
T!
任何帮助将不胜感激!
解决方法
您可以使用enumerate
来并行迭代索引和字符:
for ind,i in enumerate(string[1:],1):
quote = string[ind-1] + i
print(quote)
或更妙的是,使用切片:
for i in range(1,len(string)):
print(string[i-1:i+1])
,
您可以通过使用python中的range
和len
函数遍历索引位置来达到此目的,如下所示:
string = "AT ST!"
for i in range(len(string) - 1):
print(string[i]+string[i+1])
.index()
函数可以正常工作,它实际上从第一个索引开始搜索。
在这种情况下,最好不要使用schwobaseggl建议的索引。但是,仅出于下面这个示例中使用索引的目的,您便可以使用它。 index可以采用start和end索引的参数,因此它将仅在这些索引之间进行搜索,因此在此示例中,您可以将当前索引作为起始索引。
list.index(element,start,end)
for ind,1):
ind = string.index(i,ind)
quote = string[ind-1] + i
print(quote)```
,
使用enumerate()方法。
string = "AT ST!"
for i,s in enumerate(string[1:]:
quote = string[i] + s
print(quote)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。