字典

字典

键:值
  1. 可以使用 dict 创建字典
    items=[('name','金'),('age',21)]
    dict_1=dict(items)
    print(dict_1)   # {'name': '金', 'age': 21}
    
  1. 字典用于字符串
    dict_1={'name':'jin','age':21}
    print('姓名:{name},年龄:{age}'.format_map(dict_1)) # 姓名:jin,年龄:21
    
  1. 常用方法:

    clear(): 清空字典,d.clear()

    copy()、deepcopy():

    dict_1={'name1':'jin','age':[12,21]}
    dict_2=dict_1.copy()          	   # 复制
    print(dict_2)                 	   # {'name1': 'jin', 'age': [12, 21]}
    dict_2['name1']='tang'             # 2 中替换值不影响 1
    print(dict_2)                      # {'name1': 'tang', 'age': [12, 21]}
    print(dict_1)                      # {'name1': 'jin', 'age': [12, 21]}
    
    dict_2['age'].remove(12)           # 修改2中 age的一个值 1跟着变
    print(dict_2)                      # {'name1': 'tang', 'age': [21]}
    print(dict_1)                      # {'name1': 'jin', 'age': [21]}
    
    #使用deepcopy() 避免这种问题
    from copy import deepcopy             #导入
    dict_1={'name1':'jin','age':[12,21]}
    dict_2=deepcopy(dict_1)               # 使用深复制
    print(dict_2)                         # {'name1': 'jin', 'age': [12, 21]}
    
    dict_2['age'].remove(12)              # 删除 2 中 age 的一个值,不会影响 1
    print(dict_2)                         # {'name1': 'jin', 'age': [21]}
    print(dict_1)                         # {'name1': 'jin', 'age': [12, 21]}
    
  1. 使用fromkey方法创建新字典
    dict_1={}.fromkeys(['name1','age2'])
    dict_2=dict.fromkeys(['name2','age2'])
    print(dict_1)                          # {'name1': None, 'age2': None}
    print(dict_2)                          # {'name2': None, 'age2': None}
    
  1. get()方法取值:键不存在,不会报错
    dict_1={'name':'jin','age':21}
    print(dict_1['age'])              # 索引取值  21
    print(dict_1.get('sex'))          # get()方法,键不存在 默认返回 None,不会报错
    print(dict_1.get('sex','不存在'))  # 可指定返回信息
    
  1. items 返回一个包含所有字典项的列表
    dict_1={'name':'jin','age':21}
    print(dict_1.items())           # dict_items([('name', 'jin'), ('age', 21)])
    print(list(dict_1.items()))     # [('name', 'jin'), ('age', 21)]
    for k,v in dict_1.items():
        print('键:',k)
        print('值:',v)
        
    #键: name
    值: jin
    键: age
    值: 21
    
  1. pop() 删除指定键值对
    dict_1={'name':'jin','age':21}
    dict_1.pop('name')
    print(dict_1)                        #{'age': 21}
    
  1. setdefault() 也是获取指定键的值,不同get()的是,如果键-值不存在,则添加进去
    dict_1={'name':'jin','age':21}
    dict_1.setdefault('name1','添加')
    print(dict_1)                     # {'name': 'jin', 'age': 21, 'name1': '添加'}
    
  1. update() 用一个字典去更新另一个,即将一个字典整个加进去
    dict_1={'name':'jin','age':21}
    dict_2={'name1':'tang','age':21}
    dict_1.update(dict_2)
    print(dict_1)               # {'name': 'jin', 'age': 21, 'name1': 'tang'}
    
  1. keys()、values()
    dict_1={'name':'jin','age':21}
    print(dict_1.keys())         # dict_keys(['name', 'age'])
    print(dict_1.values())       # dict_values(['jin', 21])
    

     

posted @ 2020-06-21 17:31  _Dream  阅读(55)  评论(0)    收藏  举报