为了账号安全,请及时绑定邮箱和手机立即绑定

对list列表中的元素进行统计并保存到字典中

对list列表中的元素进行统计并保存到字典中

小萝卜腿 2016-05-20 11:48:12
""" posts为文章dict,里面保存着文章的相关信息,在这里主要是提取tags标签 将从posts中提取的tags保存到allkey的列表中, 格式如下: allkey=['linux','windows','xp,windows','linux,debian','centos','hello'] 想统计linux,windows,xp等元素的次数, 但是像这么写,如果posts里数据过多,导致运行时间就太漫长了 """ allkey = axxkey = [] mbkey = {} for xkey in posts:         allkey.append(xkey['tags'].lower()) for xxkey in allkey: if ',' not in xxkey: axxkey.append(xxkey) else: y=[] y=xxkey.split(',') for j in y: axxkey.append(j)     for i in axxkey:         mbkey[i] = mbkey.get(i, 0)+1##update 尴尬啊我重新描述一下:# 现有一个list,其格式如下 list=['中文','Linux,中文','中文,Debian,Linux','Centos','Debian,centos'] 大概是这样,len(list)>=50 然后想统计其中所有元素如中文、linux,Debian,centos等的数目,然后存到dict字典中,尽可能的简洁
查看完整描述

3 回答

?
valar_chang

TA贡献2条经验 获得超2个赞

买看懂问题,试着写写正则表达式吧

查看完整回答
2 反对 回复 2016-05-20
  • 小萝卜腿
    小萝卜腿
    # 现有一个list,其格式如下 list=['中文','Linux,中文','中文,Debian,Linux','Centos','Debian,centos'] 大概是这样,len(list)>=50 然后想统计其中所有元素如中文、linux,Debian,centos等的数目,然后存到dict字典中,尽可能的简洁
  • valar_chang
    valar_chang
    keys=['中文','Linux','Debian','Centos'] dic={} for key in keys: num=0 map(lambda x:num+1 if x.find(key),list) dic.append(key:num) print(dic) 没有运行调试,思路大概是这样
  • valar_chang
    valar_chang
    keys=['中文','Linux','Debian','Centos'] dic={} for key in keys: num=0 map(lambda x:num+1 if x.find(key),list) dic.append(key:num) print(dic) 没有运行调试,思路大概是这样
?
清波

TA贡献165条经验 获得超90个赞

没看懂题干, 羞愧的离开了

查看完整回答
反对 回复 2016-05-20
  • 小萝卜腿
    小萝卜腿
    # 现有一个list,其格式如下 list=['中文','Linux,中文','中文,Debian,Linux','Centos','Debian,centos'] 大概是这样,len(list)>=50 然后想统计其中所有元素如中文、linux,Debian,centos等的数目,然后存到dict字典中,尽可能的简洁
  • 3 回答
  • 3 关注
  • 3435 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信