首页 > 编程语言 > 详细

使用 Python 统计中文字符的数量

时间:2020-03-06 23:07:30      阅读:622      评论:0      收藏:0      [点我收藏+]

使用 Python 统计中文字符的数量

方法一,排除法

假设只有中英文字符:

import string

def str_count(str):
    '''找出字符串中的中英文、空格、数字、标点符号个数'''
    count_en = count_dg = count_sp = count_zh = count_pu = 0

    for s in str:
        # 英文
        if s in string.ascii_letters:
            count_en += 1
        # 数字
        elif s.isdigit():
            count_dg += 1
        # 空格
        elif s.isspace():
            count_sp += 1
        # 中文,除了英文之外,剩下的字符认为就是中文
        elif s.isalpha():
            count_zh += 1
        # 特殊字符
        else:
            count_pu += 1

    print('英文字符:', count_en)
    print('数字:', count_dg)
    print('空格:', count_sp)
    print('中文字符:', count_zh)
    print('特殊字符:', count_pu)


s = 'dfajl!大家@发!# 管道·符了3 54沙3发开fs\][dj'
str_count(s)

方法二,范围判断

Unicode 中,基本中文字符处在一个范围区间,可以参考 汉字 Unicode 编码范围。写成代码就是:

def hanz_count(str):
    hanz_total = 0
    for s in str:
        # 中文字符其实还有很多,但几乎都用不到,这个范围已经足够了
        if '\u4e00' <= s <= '\u9fef':
            hanz_total += 1
    return hanz_total

s = 'dfajl!大家@发!# 管道·符了3 54沙3发开fs\][dj'
print(hanz_count(s))

参考资料:

  1. python统计中文字符数量
  2. 汉字 Unicode 编码范围

使用 Python 统计中文字符的数量

原文:https://www.cnblogs.com/shuoliuchina/p/12431156.html

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