输入样例: pmispsissippi s p 输出样例: 11 p 10 p 8 s 7 s 5 s 4 p 3 s 0 p写题思路:
1、先在键盘上输入一个字符串a,使用input()函数
2、在键盘上输入一个包含两个要找的字符的字符串,字符中间用空格隔开
3、将两个字符从字符串里分离出来,用split()方法,将他们赋值给两个变量b,c
4、可以发现这个下标的输出是逆向的,所以我们这里用到的通过下标逆序遍历,用的是range函数, range() 函数可创建一个整数列表,一般用在 for 循环中。
函数语法range(start, stop[, step])参数说明:
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
>>> range(0, -10, -1) # 负数 [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
5、使用if判断语句对遍历出的字符进行作比较,有我们想要的字符就保留下他们的索引值和对应的字符,没有的就不输出。
代码:a=input('请输入一串字符串:')
b,c = input("请输入需要查找的两个字符:(用空格隔开)").split()
for i in range(len(a)-1,-1,-1):
if a[i] == b or a[i] == c:
print(i, a[i])
输出:
请输入一串字符串:pmispsissippi 请输入需要查找的两个字符:(用空格隔开)p s 11 p 10 p 8 s 7 s 5 s 4 p 3 s 0 p Process finished with exit code 0扩展:字符串、列表逆向输出的3种写法
n = [1,2,3,4,5]
print("通过下标逆序遍历1:")
for i in n[::-1]:
print(i, end=" ")
print("n通过下标逆序遍历2:")
for i in range(len(n)-1,-1,-1):
print(n[i], end=" ")
print("n通过reversed逆序遍历:")
for i in reversed(n):
print(i, end=" ")
输出:
通过下标逆序遍历1: 5 4 3 2 1 通过下标逆序遍历2: 5 4 3 2 1 通过reversed逆序遍历: 5 4 3 2 1 Process finished with exit code 0
纯属个人观点,仅供参考,希望可以帮助到各位小伙伴!!!



