试图将其设为 return 同一角色的多个实例的索引值,而不仅仅是第一个,无法弄清楚发生了什么
Was trying to get it to return the index value of multiple instances of the same character rather than just the first, can't figure out what happened
所以,我只是想看看我是否能找到一种方法让它不仅打印第一个“o”字符的索引值,还打印第二个“o”字符的索引值,所以输出显然必须是4、8.
string = "Python for Beginners"
x = "o"
for x in string:
print (string.index (x))
我的理由是,对于字符串中每个等于“o”的字符,它都会给我它的特定索引计数。相反,它给了我这个作为输出
0
1
2
3
4
5
6
7
4
9
6
11
12
13
14
5
5
12
9
19
所以除了没有按照我的想法去做之外,过去一个小时的大部分时间我都在试图弄清楚让我得到那个输出的逻辑但是唉,作为一个菜鸟,我无法弄清楚为了我的生活。
我会对如何让它计算同一字符的多个实例的解决方案感兴趣,但更感兴趣的是了解到底发生了什么给我输出。就是想不通。
大家干杯
好吧,经过一番挖掘,我发现 re.finditer 命令首先要求我们导入 re(正则表达式)。我实际上不知道那是什么意思,但想通了足以使用它。感谢此线程 Finding multiple occurrences of a string within a string in Python
然后只是玩了一下,但最终归结为这个
string = "Python for Beginners"
import re
search = input ("What are you looking for? ")
msg = f" '{search}' found at index: "
for x in re.finditer (search , string):
print (msg, x.start())
if string.find (search) == -1:
print ("Error: sequence not present in string. Note: search is case sensitive")
这一切只是为了在学习过程中对自己进行一些实际的教育。干杯。仍然对实现相同输出的“更好方法”的建议持开放态度。
所以,我只是想看看我是否能找到一种方法让它不仅打印第一个“o”字符的索引值,还打印第二个“o”字符的索引值,所以输出显然必须是4、8.
string = "Python for Beginners"
x = "o"
for x in string:
print (string.index (x))
我的理由是,对于字符串中每个等于“o”的字符,它都会给我它的特定索引计数。相反,它给了我这个作为输出
0
1
2
3
4
5
6
7
4
9
6
11
12
13
14
5
5
12
9
19
所以除了没有按照我的想法去做之外,过去一个小时的大部分时间我都在试图弄清楚让我得到那个输出的逻辑但是唉,作为一个菜鸟,我无法弄清楚为了我的生活。 我会对如何让它计算同一字符的多个实例的解决方案感兴趣,但更感兴趣的是了解到底发生了什么给我输出。就是想不通。 大家干杯
好吧,经过一番挖掘,我发现 re.finditer 命令首先要求我们导入 re(正则表达式)。我实际上不知道那是什么意思,但想通了足以使用它。感谢此线程 Finding multiple occurrences of a string within a string in Python 然后只是玩了一下,但最终归结为这个
string = "Python for Beginners"
import re
search = input ("What are you looking for? ")
msg = f" '{search}' found at index: "
for x in re.finditer (search , string):
print (msg, x.start())
if string.find (search) == -1:
print ("Error: sequence not present in string. Note: search is case sensitive")
这一切只是为了在学习过程中对自己进行一些实际的教育。干杯。仍然对实现相同输出的“更好方法”的建议持开放态度。