首頁 > 軟體

Python中字典的相關操作介紹

2022-02-09 10:00:40

字典的新增與修改

# coding:utf-8

if __name__ == '__main__':
    example = {'name': 'xie', 'age': 27}
    example2 = example.copy()
    example3 = example.copy()
    '''
     例1:使用dict[key] = value,這種方法如果dict中存在該key,則修改該key上的值=value,不存在該key,則建立該key=>value
     例2:使用dict.setdefault(key,value),當dict中存在該key,則啥都不幹。當dict中不存在該key,則建立該key=>value
     dict.setdefault(key,value) 會返回dict[key]的值
     例3:使用dict.update(dict2),可以理解成為兩個字典的合併,重複時以dict2的key=>value 為準
    '''

    # 例1
    example['school'] = '城南'
    print(example)  # {'name': 'xie', 'age': 27, 'school': '城南'}
    example['name'] = 'rui'
    print(example)  # {'name': 'rui', 'age': 27, 'school': '城南'}

    # 例2
    result = example2.setdefault('name', 'rui')
    print(result)  # xie
    print(example2)  # {'name': 'xie', 'age': 27}
    result = example2.setdefault('school', '城南')
    print(result)  # 城南
    print(example2)  # {'name': 'xie', 'age': 27, 'school': '城南'}

    # 例3
    example3.update({'name': 'rui'})
    print(example3)  # {'name': 'rui', 'age': 27}
    example3.update({'name': 'xiang', 'school': '城南'})
    print(example3)  # {'name': 'xiang', 'age': 27, 'school': '城南'}

獲取字典所有的key

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:通過dict.keys() 獲取dict所有key組成的偽列表
    偽列表:只能看。不能修改,刪除元素
    通過list(dict_keys)能將偽列表變成真列表
    '''

    # 例1
    example = {'name': 'xie', 'age': 27, 'sex': '男'}
    keys = example.keys()
    print(keys)  # dict_keys(['name', 'age', 'sex'])
    print(type(keys))  # <class 'dict_keys'>
    print(type(list(keys)))  # <class 'list'>

獲取字典所有的value

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:通過dict.values()獲取dict中所有value組成的偽列表
    通過list(dict_keys)將偽列表轉成真列表
    '''
    
    # 例1
    example = {'name': 'xie', 'age': 27, 'sex': 'man'}
    values = example.values()
    print(values)  # dict_keys(['name', 'age', 'sex'])
    print(type(values))  # <class 'dict_keys'>
    print(type(list(values)))  # <class 'list'>

獲取字典key上的valule

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:通過dict[key]獲取value,如果key不存在則報錯
    列2:通過dict.get(key,default)獲取key,如果key不存在則返回default,default預設None,效能比dict[key]小一丟丟,但不用去管報錯的情況
    '''

    example = {'name': 'xie', 'age': 27, 'sex': 'man'}
    # 例1
    print(example['name'])  # xie
    # print(example['school'])報錯

    # 例2
    print(example.get('name'))  # xie
    print(example.get('school'))  # None
    print(example.get('school', '城南花已開'))  # 城南花已開

字典清空

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:dict.clear()得到一個空字典
    '''

    example = {'name': 'xie'}
    # 例1
    example.clear()
    print(example)  # {}

通過索引刪除字典元素

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:dict.pop(key)刪除字典key上的key=>value,如果key不存在,則報錯
        dict.pop(key)返回刪除前dict[key]上的value
    '''

    example = {'name': 'xie', 'age': 27}
    print(example.pop('age'))  # 27
    print(example)  # {'name': 'xie'}
    # example.pop('sex') sex在字典中不存在,報錯

刪除字典最後一個元素

# coding:utf-8

if __name__ == '__main__':
    '''
    例1:dict.popitem()刪除最後一個元素的key=>value,如果dict是空字典則報錯
        dict.popitem()返回被刪除元素key,value組成的元組(key,value)
    '''
    example = {'name': 'xie', 'age': 27}

    # 例1
    print(example.popitem())  # ('age', 27)
    print(example)  # {'name': 'xie'}
    example.popitem()
    # example.popitem() 空字典呼叫popitem會報錯

到此這篇關於Python中字典的相關操作介紹的文章就介紹到這了,更多相關Python字典內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com