python 统计不同字符的个数。用户从键盘输入一行字符,编写一个程序,统计并输出英文字符、数字、空格和其他字符的个数。

统计不同字符的个数。用户从键盘输入一行字符,编写一个程序,统计并输出英文字符、数字、空格和其他字符的个数。

这是我的代码


import string
c = input("输入字符串:");
a = 0;
b = 0;
c = 0;
d = 0;
i = string();
for i in range(c):
    if 'A'<=i<='z':
        a+=1;
    elif '0'<=i<='9':
        b+=1;
    elif i==' ':
        c+=1;
    else:
        d+=1;

print(" 英文字符有",a,"个" "数字有",b,"个" "空格有",c,"个" "其他字符有",d,"个")

img

出现这个错误。我的想法是强行定义i为字符,但是错误,能不能按照我的思路纠正一下,谢谢大伙

1-首先python语法不加;
2-你的变量名重复,导致input,被第六行重新赋值成0
3-如果想将i变量定义为字符语法为str(i) 整数为int(i)
如有帮助望采纳,谢谢

你的c本身就是字符串,你想获取到c里面的每个字符,直接这样
for i in c:
就成了
根本不用range,也不需要转换类型

这都不符合python语法规范吧,python中基本没有分号使用的,string是内置模块的,你这使用都不对

但是报错的主要错误还是你这模块没写对


c = input("输入字符串:");
a = 0;
b = 0;
d = 0;
e = 0;
i = string();
for i in range(c):
    if 'A'<=i<='z':
        a+=1;
    elif '0'<=i<='9':
        b+=1;
    elif i==' ':
        e+=1;
    else:
        d+=1;
 
print(" 英文字符有",a,"个" "数字有",b,"个" "空格有",e,"个" "其他字符有",d,"个")