实用:python中字符串重复统计

要求:
1.字符表为a~z中的26个字母
2.随机挑选2个字母组成字符串,共挑选100个
3.降序输出这100个字符串及重复的次数

from collections import OrderedDict
import random
lst1 = [chr(i) for i in range(ord('a'),ord('z')+1)]
length = len(lst1)
n = 2
lst2 = []
od = OrderedDict()

for i in range(100):
    str1 = ''
    for i in range(n):
        index = random.randrange(length)
        str1 += lst1[index]
    else:
        lst2.append(str1)
lst2 = sorted(lst2,reverse=True)
print(lst2,end='\n\n')

for k in lst2:
    od.setdefault(k,0)
    od[k] += 1
else:
    print(od)

运行结果:

['zx', 'zk', 'zi', 'zi', 'zf', 'yv', 'ys', 'yr', 'yj', 'xq', 'xi', 'xa', 'wx', 'wu', 'wn', 'wl', 'wk', 'wa', 'vw', 'us', 'uf', 'uc', 'tw', 'tu', 'tq', 'tg', 'td', 'tb', 'sy', 'su', 'sg', 'rw', 'rn', 'rg', 're', 'qf', 'qd', 'qd', 'pv', 'ps', 'ps', 'pr', 'ph', 'ox', 'ow', 'om', 'of', 'ob', 'nt', 'nq', 'nl', 'nl', 'nd', 'mw', 'mn', 'm
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值