[dict]dict里面每个item是一个tuple

比如有下面一段代码(google-python-exercises,basic,wordcount.py)

string = "Alice alice was beginning to to to get very tired of sitting by her sister"
sList = string.split()
wordDict={}
for w in sList:
  if w in wordDict:
    wordDict[w]+=1
  else:
    wordDict[w]=1

这些是把string里面的单词频次做一个统计,放在wordDict这个字典里面,不过现在还没有排序。如果print(wordDict)得出来的结果是这样的:

{'sister': 1, 'her': 1, 'get': 1, 'very': 1, 'was': 1, 'tired': 1, 'Alice': 1, 'alice': 1, 'to': 3, 'of': 1, 'sitting': 1, 'beginning': 1, 'by': 1}

如果要根据单词出现的频次排序,肯定需要借助key=,问题是这个function怎么写?下面这个官方的写法不错:

def get_count(wordDictTuple):
  return wordDictTuple[1]

items = sorted(wordDict.items(), key=get_count, reverse=True)

所以对于字典里面每一个item来说,都是一个tuple,由名称及值组成,名称可以用tuple[0]获取,值就是tuple[1]


bottom line:python的字典,每一个item都是一个tuple,通过[0]和[1]可以获得名称以及值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://python.jobbole.com/85231/ 关于专业技能写完项目接着写写一名3年工作经验的J...
    燕京博士阅读 12,228评论 1 118
  • 个人笔记,方便自己查阅使用 Py.LangSpec.Contents Refs Built-in Closure ...
    freenik阅读 67,826评论 0 5
  • 内置函数Python解释器内置了许多功能和类型,总是可用的。他们是按字母顺序列在这里。 abs(x)返回一个数的绝...
    uangianlap阅读 5,034评论 0 0
  • 失眠 凌晨的街道 寂静悠长的指向远方 风呼啸而过 奔跑的声音 像阴兵过阵 孤立的路灯 照亮了眼前 却忽略了身后 躲...
    日斜寒林阅读 1,326评论 1 1
  • DF_Lei阅读 1,586评论 0 0