qq_57305471 2021-07-25 10:55 采纳率: 100%
浏览 46
已结题

输入一行字符输出其中英文字符,数字,空格和其他字符的个数。这个其他字符怎么数,我不知道为啥错了,总是0

a = input("请输入:")
x=d=s=k=q=t=0
for i in a:
if 'a'<=i<='z':
x=x+1
elif 'A'<=i<='Z':
d+=1
elif '0'<=i<='9':
s+=1
elif ' ':
k+=1
else:
t=x+d+s+k
q=int(len(a)-t)
print("小写字母{},大写字母{},数字{},空格{},其他{}".format(x,d,s,k,q))

  • 写回答

3条回答 默认 最新

  • robot8me 2021-07-25 10:59
    关注

    img

    a = input("请输入:")
    x=d=s=k=q=t=0
    for i in a:
        if 'a'<=i and i<='z':  # 最好分开
            x=x+1
        elif 'A'<=i and i<='Z':  # 最好分开
            d+=1
        elif '0'<=i and i<='9':  # 最好分开
            s+=1
        elif i==' ':  # 注意这里
            k+=1
        else:
            q+=1  # 注意这里
        #q=int(len(a)-t)
    print("小写字母{},大写字母{},数字{},空格{},其他{}".format(x,d,s,k,q))
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 8月3日
  • 已采纳回答 7月26日
  • 创建了问题 7月25日