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

Python禁用len等函数时,如何统计字符串元素个数?

字符串长度统计(禁用len等方法)的解决方案

你的代码报错是因为当索引i超过字符串的最大有效索引时,访问s[i]会直接抛出IndexError,循环无法正常终止,而且最后计算长度时的i + 1逻辑也有问题。

这里给你两种可行的实现方式:

方法一:利用异常处理终止while循环

i = 0
s = input("enter string : ")
try:
    while True:
        # 尝试访问当前索引的字符,不存在时触发异常
        s[i]
        i += 1
except IndexError:
    # 捕获到索引越界异常时,说明已经遍历完所有字符
    pass
print(i)

原理:每一次循环尝试访问s[i],当i等于字符串长度时,该位置不存在字符,触发IndexError,此时i的值正好等于字符串的元素个数(比如'hello'遍历到i=5时触发异常,i就是5)。

方法二:用for循环直接遍历计数

count = 0
s = input("enter string : ")
for _ in s:
    count += 1
print(count)

原理:字符串是可迭代对象,for循环会逐个取出每个字符,每遍历一个字符就给计数器加1,遍历完成后count就是总元素个数,这种写法更简洁,也不会有索引越界的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 18:35:36