仅使用for()和range()函数统计用户输入字符串的字符总数
问题排查与修复
报错原因
你代码触发
int类型没有index属性报错的核心原因:range(len(name))遍历得到的i是整数类型的索引值(输入"aryan"时i依次取0、1、2、3、4),整数本身不存在index属性,你的原逻辑对i调用index[-1]的写法不符合语法规则。
符合要求的修改方案
要求仅使用for()和range()函数统计字符数的话,可以通过计数器累加的方式实现,修改后代码如下:
name = input("Name: ") char_count = 0 for _ in range(len(name)): char_count += 1 print(char_count)
实现逻辑说明
- 先初始化计数变量
char_count初始值为0 range(len(name))会生成和输入字符串长度完全一致的整数序列,每循环一次就对应字符串的一个字符,每轮循环将计数变量加1- 循环结束后
char_count的值就是输入字符串的总字符数,输入"aryan"时会正确输出结果5
内容的提问来源于stack exchange,提问作者Aryan
相关产品推荐
相关产品推荐

