str = input()
ls = [];ls1 =[]
while True:
chr = input().split()
if '\n':
ls = chr[::-1]
break
ls1 = list(enumerate(str))
for i in ls:
print('%s' %i,([j for j,x in ls1 if x ==i])[::-1])
```python
运行的结果:
mississippi
s p m
m [0]
p [9, 8]
s [6, 5, 3, 2]
疑问:最后的输出结果是有中括号的,想要去掉这个括号该怎么做?或者,
有没有其他做法?
str = input()
ls = [];ls1 =[]
while True:
chr = input().split()
if '\n':
ls = chr[::-1]
break
ls1 = list(enumerate(str))
for i in ls:
print(f'{i} '+' '.join([f'{j}' for j,x in ls1 if x ==i]))
最简单的办法,直接在[j for j,x in ls1 if x ==i])[::-1]前面加个星号
输出的结果有中括号是因为这是个list,你遍历输出一下就好了