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

Python报错string indices must be integers,求代码问题排查

解决"string indices must be integers"报错问题

嘿,我一眼就揪出问题所在啦!你遇到的这个报错完全是因为字符串切片的语法用错了~

错误原因

Python中获取字符串的子串时,不能用逗号分隔起始和结束索引,你写的text[0, int(stringloc)]会被Python识别为用元组(0, int(stringloc))去索引字符串,但字符串只接受单个整数作为索引,这就触发了"string indices must be integers"的错误。

而且你提到find方法返回的是23,这个值本身就是整数,完全没必要用int()转换哦。

修正后的代码

stringloc = 1
stringloc = text.find('http')
print(stringloc)
# 把逗号改成冒号,这才是正确的切片语法
print(text[0:stringloc])
# 更简洁的写法:起始索引为0时可以省略
print(text[:stringloc])

这样修改后,就能正确获取从字符串开头到"http"出现位置之前的子串啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:32:10