python如何统计字符串中字符的个数

 更新时间:2023年10月28日 15:21:31   作者:&星火  
这篇文章主要给大家介绍了关于python如何统计字符串中字符的个数的相关资料,如果在一个字符串中,需要统计某个字符或字符串出现的次数,可以使用count方法,需要的朋友可以参考下

1.遍历计数

遍历字符串的每个字符,遍历的时候加入判断是否为字母的条件 isalpha,如果结果为 True 则计数器加1,否则进入下一个循环。

str_= "32Ss8nWn012"
str_count = 0
# 字符串本身就是迭代器
for s in str_:
    if s.isalpha():
        str_count += 1
# 输出计数器
print(str_count)

5

2.匹配字母

2.1 字母表计数用string 模块中的 ascii_lowercase 属性,遍历字母表,看看每个字母在我们的字符串中的数量,求和即可。然后还要注意:我们原始给定的字符串没有规定大小写,所以我们需要对原始字符串统一转换成小写字母(或者大写字母)。

import string

str_ = "32Ss8nWn012"
str_count = 0
str_ = str_.lower()
# 遍历ascii码中的小写英文字母
for i in string.ascii_lowercase:
    # 内置函数count效率高
    str_count += str_.count(i)

print(str_count)

5

2.2 字母表计数这个方法与上一个方法都是匹配字母表,只不过这里用的是正则表达。

import re

str_ = "32Ss8nWn012"
# [a-zA-Z]是匹配内容,str_是待匹配的对象
str_ = re.findall('[a-zA-Z]',str_)
print(len(str_))

5

3.统计每个字符的个数

alist=['l','am','a','student']
#先将列表转化为字符串
str=""
for i in alist:
    str+=i 
#统计无重复的字符    
list=set(str)
print(list)       
#利用count统计
li=[]
for j in list:
    num=str.count(j)
    #print(j)
    print(num)
    li.append(num)
print(li)
#让元素的个数与元素一一对应
log3 = dict(zip(list,li))
print(log3)

{'e', 'u', 's', 'l', 'm', 'd', 'n', 't', 'a'}
1
1
1
1
1
1
1
2
2
[1, 1, 1, 1, 1, 1, 1, 2, 2]
{'e': 1, 'u': 1, 's': 1, 'l': 1, 'm': 1, 'd': 1, 'n': 1, 't': 2, 'a': 2}

附:Python统计英文、中文、数字、空格等字符数

Python统计字母、中文、数字、空格等字符数

# 统计一行字符的不同字符个数
str = input("请输入一行字符:")
count1 = count2 = count3 = 0
for s in str:
if "a" <= s <= "z" or "A" <= s <= "Z":
count1 += 1 # 英文计数
elif 0x4e00 <= ord(s) <= 0x9fa5: # 中文的Unicode编码范围
count2 += 1 # 中文计数
elif 48 <= ord(s) and ord(s) <= 57:
count3 += 1 # 数字计数
print("该行字符有空格{0}个".format(str.count(" "))) # 统计空格
print("该行字符有英文字符{0}个".format(count1)) # 计数统计,统计英文字符
print("该行字符有中文字符{0}个".format(count2)) # 计数统计,统计中文字符
print("该行字符有数字{0}个".format(count3)) # 计数统计,统计数字字符
print("该行字符有其他字符{0}个".format(len(str)-count1-count2-count3-str.count(" "))) # 统计其他字符

运行结果:

请输入一行字符:哈哈哈哈哈哈哈哈哈哈哈哈哈哈,,,rhgi!@#$ eugi jvub us123456

该行字符有空格4个

该行字符有英文字符14个

该行字符有中文字符14个

该行字符有数字6个

该行字符有其他字符7个

小结

1.中文的Unicode编码范围0x4e00—0x9fa5

2.ord(x)函数,返回单字符x表示的Unicode编码

3.str.count(x),返回x子串出现的次数

总结

到此这篇关于python统计字符串中字符个数的文章就介绍到这了,更多相关python统计字符个数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python 查看数据类型与格式

    Python 查看数据类型与格式

    这篇文章主要介绍了Python 查看数据类型与格式方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • Python ArcPy实现栅格图像文件由HDF格式批量转换为TIFF格式

    Python ArcPy实现栅格图像文件由HDF格式批量转换为TIFF格式

    这篇文章主要为大家详细介绍了如何基于Python中Arcpy模块,实现大量HDF格式的栅格图像文件批量转换为TIFF格式,有需要的小伙伴可以参考下
    2024-12-12
  • 从基础到高级详解Python多容器迭代完全指南

    从基础到高级详解Python多容器迭代完全指南

    在现代软件开发中,处理多种容器类型是日常任务的核心,Python提供了强大的多容器迭代工具,但许多开发者未能充分利用其全部潜力,下面小编就来和大家详细讲讲吧
    2025-09-09
  • pandas把dataframe转成Series,改变列中值的类型方法

    pandas把dataframe转成Series,改变列中值的类型方法

    下面小编就为大家分享一篇pandas把dataframe转成Series,改变列中值的类型方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 关于Python连接Cassandra容器进行查询的问题

    关于Python连接Cassandra容器进行查询的问题

    这篇文章主要介绍了Python连接Cassandra容器进行查询的问题,问题的关键在于寻找到Cassandra的9042端口,从而获取数据,具有内容详情跟随小编一起看看吧
    2021-11-11
  • Python使用tkinter制作在线翻译软件

    Python使用tkinter制作在线翻译软件

    这篇文章主要为大家详细介绍了Python使用tkinter制作在线翻译软件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-02-02
  • python中SQLAlchemy使用前端页面实现插入数据

    python中SQLAlchemy使用前端页面实现插入数据

    这篇文章主要介绍了SQLAlchemy使用前端页面实现插入数据,文章内容介绍详细巨头有一定的参考价值,需要的小伙伴可以参考一下
    2022-03-03
  • 使用django和vue进行数据交互的方法步骤

    使用django和vue进行数据交互的方法步骤

    这篇文章主要介绍了使用django和vue进行数据交互的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • Python入门教程 超详细1小时学会Python

    Python入门教程 超详细1小时学会Python

    本文适合有经验的程序员尽快进入Python世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的Python程序.
    2006-09-09
  • pip 安装库比较慢的解决方法(国内镜像)

    pip 安装库比较慢的解决方法(国内镜像)

    对于Python开发用户来讲,PIP安装软件包是家常便饭。但国外的源下载速度实在太慢,浪费时间。而且经常出现下载后安装出错问题,所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成功率
    2019-10-10

最新评论