python 统计字符串中字符的个数
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 属性,遍历字母表,看看每个字母在我们的字符串中的数量,求和即可。然后还要注意:我们原始给定的字符串没有规定大小写,所以我们需要对原始字符串统一转换成小写字母(或者大写字母)。文章来源:https://www.toymoban.com/news/detail-515605.html
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 字母表计数
这个方法与上一个方法都是匹配字母表,只不过这里用的是正则表达。文章来源地址https://www.toymoban.com/news/detail-515605.html
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 统计字符串中字符的个数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!