第三篇 python运用字典统计字符串中字母出现的次数 - Go语言中文社区

第三篇 python运用字典统计字符串中字母出现的次数


通过字典统计字符串中字母出现的次数

碎碎念

这个内容还是我日常互相种草的好友提供的素材,很基础也很实用,稍微进阶一些就可以用来统计文章中的单词出现的频率了。她在网上找的代码用了库,通过python中的字典可以很简洁的完成。(下图是她在网上找的)

关于python中的字典

我们可以把字典理解为一种容器,我们可以往里面装任意类型的对象,字典的每个键值 key:value 对用“冒号 :” 分割,每个键值对之间用“逗号 ,” 分割,整个字典包括在花括号 {} 中 ,表示如下:
d = {key1 : value1, key2 : value2 }
1.创建字典

dict1 = {'key1':'value1' , 'key2':'value2' , 'key3':'value3'}

2.修改字典
字典中如果同一个键被赋值两次,后一个值会被记住,也就实现了字典的修改,如下:

dict1 = {'key1':'value1' , 'key2':'value2' , 'key3':'value3'}
dict1['key3']=2
print (dict1)

输出结果:
{'key1': 'value1', 'key2': 'value2', 'key3': 2}

当然,我们还可以删除字典中的元素和字典:

del dict['key1'] # 删除键 'key1'
dict.clear() # 清空字典,但字典还在
del dict # 删除字典,整个字典都没有了

实现代码

第一个代码用到了循环,把这个里面的key用x表示,查看key是否在字典中,在的话对应的变量加一,不再的话就新增加一个key并使其的值为一。

str1 = 'Danphnis love Alice'#给出字符串
d = {} #给出字典
for x in str1:
    if x in d:
       d[x]=d[x]+1
    else:
       d[x]=1
print (d)  

     
{'D': 1, 'a': 1, 'n': 2, 'p': 1, 'h': 1, 'i': 2, 's': 1, ' ': 2, 'l': 2, 'o': 1, 'v': 1, 'e': 2, 'A': 1, 'c': 1}

下面po一个更为简短的代码,使用到了numpy库中的unique函数。但是这个代码是每一个字符都要循环一遍,如果字符串中内容过多的话就不是很适合了。

import numpy as np
str1 = 'Danphnis love Alice'
dic = {k:str.count(k) for k in np.unique(list(str1))}
print (dic)
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_43086925/article/details/85041513
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢