getLlist=[1, 9, 9, 8, 2, 2, 0, 8] changeIndexList = "".join(str(getLlist)) maxTempIndex =changeIndexList.rfind(str(9)) print(maxTempIndex) 为什么输出不是2
时间: 2024-04-29 14:21:03 浏览: 50
因为在将列表转换为字符串时,字符串中的每个元素之间会自动添加一个空格。所以要想正确地找到最后一个数字9的索引位置,需要在查找时加上空格,即将 `maxTempIndex = changeIndexList.rfind(str(9))` 改为 `maxTempIndex = changeIndexList.rfind('9 ')`。这样就能正确地输出2了。
相关问题
getLlist=[1, 9, 9, 8, 2, 2, 0, 8] changeIndexList = "".join(str(getLlist)) maxTempIndex =maxTempIndex = changeIndexList.rfind(' 9') print(maxTempIndex) 为什么输出不是2
这是因为在 `changeIndexList.rfind(' 9')` 中,你在查找数字 9 时使用了一个空格来作为分隔符,但是在 `getLlist` 列表中数字 9 前面并没有空格,因此它无法匹配到正确的位置。
要解决这个问题,你可以修改代码中的 `rfind()` 方法参数,使用 `'9'` 作为查找的字符串,而不是 `' 9'`。也可以使用 `index()` 方法来找到列表中第一个出现的 9 的索引位置,如下所示:
```
getLlist=[1, 9, 9, 8, 2, 2, 0, 8]
maxTempIndex = getLlist.index(9, 0, len(getLlist)) # 在整个列表范围内查找第一个 9 的位置
print(maxTempIndex)
```
这样就可以正确地输出 1,表示列表中第一个 9 的索引位置。
阅读全文