首页 > 其他 > 详细

统计字符串中指定类型字符的个数

时间:2019-10-05 20:58:06      阅读:146      评论:0      收藏:0      [点我收藏+]

 

 统计字符串中指定类型字符的个数

描述

假设所有字符分为三类:字母,数字及其他字符。????????????????????????????????????????????????????????????????????????????????????????????????

编写一个函数,判断指定字符的类型,并统计字符串中该类型字符的个数。????????????????????????????????????????????????????????????????????????????????????????????????

主程序输入一个字符串及一个字符,调用上述函数统计该字符同类型字符在该字符串中的个数。

输入格式

第一行输入一个字符串,第二行输入一个字符,不要任何提示信息。????????????????????????????????????????????????????????????????????????????????????????????????

输出格式????????????????????????????????????????????????????????????????????????????????????????????????

      输出指定字符类型的个数,如依次输入a8kw#2和-,输出为“与-同类型的字符有1个。”

解题代码:

def function(s, ch):
    a=b=c=0
    for i in s:
        if ord(a)<=ord(i)<=ord(z) or ord(A)<=ord(i)<=ord(Z):
            a=a+1
        elif ord(0)<=ord(i)<=ord(9):
            b=b+1
        else:
            c=c+1
    
    if ord(a)<=ord(ch)<=ord(z) or ord(A)<=ord(ch)<=ord(Z):
        return a
    elif ord(0)<=ord(ch)<=ord(9):
        return b
    else:
        return c

#--------在以下空行处编写function函数代码----------------#
#以下为主程序
s=input()
ch=input()
print("与%c同类型的字符有%d个。"%(ch,function(s,ch)))

分析:本题主要的问题是如何识别输入的字符是何种类型的,是字母,数字还是其他字符类型。众所周知,每一个字符都有对应的阿斯克码值Ascii,且相同类型的字符的Ascii相邻

,因此,我们可以通过这个方法来识别。

  这里我们得用到ord()函数。ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常。

通过for循环可以依次遍历字符串的每一个字符,并且分辨字符类型和计数,再通过if条件判断语句,判断要查询的字符类型并返回该类型的个数。

运行结果:

技术分享图片

 

统计字符串中指定类型字符的个数

原文:https://www.cnblogs.com/DrcProgrammingCool/p/11625586.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!