You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为什么Python字符串的.index()方法返回的字符索引不符合预期?

根因分析

str.index(x) 的设计逻辑是返回字符串中第一个与x匹配的字符的下标,并非返回当前遍历位置的索引。你的输入字符串存在重复字符(如a、f、k等多次出现),因此每次遍历到重复字符时,输出的都是该字符首次出现的下标,最终就出现了你给出的非连续输出结果。

修复代码

如果需要输出遍历过程中每个字符对应的顺序下标,使用enumerate同时遍历索引和字符即可,修改后代码如下:

a = 'RqafaksdjfklasdjfaklEzty'

def w(s):
    str = ""
    for idx, _ in enumerate(s):
        print(idx)
    return str
w(a)

运行后即可得到你预期的0到23的连续输出序列。

内容的提问来源于stack exchange,提问作者Rick Perez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 06:36:02