字典

​ 字典也称为关联数组(associative array)或者散列表(hash)。除了列表之外,字典也许是python中最灵活的内置数据结构,如果把列表看做是有序的对象集合,那么字典就是无序的集合。他们的主要差别是:字典当中的元素是通过键来存取的,而不是通过偏移存取。–《python学习手册》

1、创建字典

  1. 创建一个空字典D = {}

  2. 创建有项目的字典D = {'name':'Bob,'school':'UESTC'}

  3. 使用D = dict(name = 'Bob',school = 'UESTC')

  4. 使用D = dict.fromkeys(seq,value)使用seq中的值作为键生成字典,值为value

  5. 使用D = dict(zip(keylist,valuelist))关键字和对应的值列表,与3不同的是,他有值列表,而3是所有的键都设为默认值

  6. 其他迭代的方法D = {k:v for (k,v) in zip(keylist,valuelist)}D = {x: x**2 for x in keylist}

2、字典的常见操作

  1. 使用D.copy()对字典进行浅复制

  2. 使用len(D)求字典中键的个数

  3. 使用D.get(key,default)返回字典中指定键的值,如字典中不存在此值,返回默认值

  4. 使用D.setdefault(key,default)返回字典中指定键的值,如字典中不存在此值,将会添加键并将值设为default

  5. 使用D.update(D2)将D2合并到D中

  6. 使用D.pop(key,default)从D中删除对应键及对应的值,并返回值。若键不存在则返回default

  7. 使用D.popitem(key)从D中删除最后一个键及对应的值,返回一个包含键和值的元组

  8. key in D返回一个布尔值,判断键是否存在在字典中

  9. D.keys()D.valuesD.items返回一个可以迭代的视图而非列表,当然可以使用list()将其变为列表

  10. 字典键排序

    >>>D = ['a':1, 'b':2, 'c':2]
    >>>Ks = list(D.keys())
    >>>Ks = Ks.sort()
    >>>for k in Ks: print(k, D[k])
    a 1
    b 2
    c 3
    
    >>>D = ['a':1, 'b':2, 'c':2]
    >>>for k in sorted(D.keys()):
        print(k, D[k])
    a 1
    b 2
    c 3
    
    >>>D = ['a':1, 'b':2, 'c':2]
    >>>for k in sorted(D):
        print(k, D[k])
    a 1
    b 2
    c 3
    
  11. 字典比较

    >>>b = dict.fromkeys(['a','b','c'],1)
    >>>a = {}
    >>>sorted(a.items())<sorted(b.items())3
    True
    
Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐