400-650-7353
您所在的位置:首頁 > IT干貨資料 > python > 【Python基礎知識】Python字典方法匯總(上)

【Python基礎知識】Python字典方法匯總(上)

  • 發(fā)布: python培訓
  • 來源:python干貨資料
  • 2020-08-07 14:01:33
  • 閱讀()
  • 分享
  • 手機端入口

字典是數(shù)據(jù)的無序集合,用于存儲數(shù)據(jù)值。與其他僅將單個值作為項的數(shù)據(jù)類型不同,字典具有鍵-值對。字典中的鍵和值之間用冒號“:”分隔,而鍵-值對之間用逗號“,”分隔,所有鍵-值對用花括號“{}”括起來。字典的語法格式如下:

字典名 = {鍵1: 值1, 鍵2: 值2, …}

字典的工作方式類似于現(xiàn)實世界中的字典,字典的鍵必須是唯一的,并且是不可變的數(shù)據(jù)類型,如字符串、整數(shù)和元組,但是鍵的值可以重復,并且可以是任意類型。

下面介紹字典采用的主流方法。

1、setdefault()方法

字典的setdefault()方法用于指定一個鍵和一個值(鍵為第一個參數(shù))。如果字典中存在指定的鍵,那么它和get()方法是等價的:

  1. >>> someone = {'name''Wang''age'19
  2. >>> someone.setdefault('age'35)   # 鍵'age'已存在,返回對應的值 
  3. 19 
  4. >>> someone   # someone字典并沒有改變 
  5. {'name''Wang''age'19

如果字典中不存在指定的鍵,那么會在字典中添加鍵-值對:

  1. >>> someone = {'name''Wang''age'19
  2. >>> someone.setdefault('gender''female')   # 鍵'gender'不存在 
  3. 'female' 
  4. >>> someone   # someone字典中添加了'gender': 'female'鍵-值對 
  5. {'name''Wang''age'19'gender''female'

setdefault()方法也可以不指定“值”,即第二個參數(shù)為空,此時默認的“值”為None:

  1. >>> someone = {'name''Wang''age'19
  2. >>> someone.setdefault('gender')   # 未指定鍵-值對中的值 
  3. >>> someone   # 鍵'gender'的值為None 
  4. {'name''Wang''age'19'gender'None

2、keys()方法

字典的keys()方法用于返回該字典所有鍵的字典視圖:

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> someone.keys()   # 返回所有鍵的字典視圖 
  3. dict_keys(['name''age''hobbies']) 

字典視圖是一種特殊的類型,它可以迭代,這意味著可以用for循環(huán)迭代它:

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> for key in someone.keys(): 
  3. ...     print(key) 
  4. ... 
  5. name 
  6. age 
  7. hobbies 

除了可迭代外,字典視圖還有一個重要的特性,這也是它為什么被稱為視圖的原因。字典視圖可以“實時”反映出字典當前的情況,當字典改變時,它的值也會隨之改變(即使已經賦值給一個變量):

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> someone_keys = someone.keys()  # 先將keys()返回的值賦給變量 
  3. >>> someone_keys  
  4. dict_keys(['name''age''hobbies']) 
  5. >>> del someone['hobbies']   # 再刪除'hobbies'鍵-值對 
  6. >>> someone_keys   # someone_keys的值也隨之改變 
  7. dict_keys(['name''age']) 
  8. >>> someone['gender'] = 'male'   # 添加一個鍵-值對 
  9. >>> someone_keys   # someone_keys的值再次隨之改變 
  10. dict_keys(['name''age''gender']) 

如果想要保存字典的狀態(tài),可以將字典視圖復制到列表或元組中:

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> someone_keys = list(someone.keys())  # 先使用list()將字典視圖變成列表 
  3. >>> someone_keys 
  4. ['name''age''hobbies'
  5. >>> del someone['hobbies']   # 再刪除'hobbies'鍵-值對 
  6. >>> someone_keys   # someone_keys的值并沒有改變 
  7. ['name''age''hobbies'

3、values()方法

字典的values()方法與keys()方法類似,只是它返回的是該字典所有值的字典視圖:

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> someone.values()  # 返回所有值的字典視圖 
  3. dict_values(['Wang'19, ['sing songs''dance''basketball']]) 

字典所有值的字典視圖也可以迭代:

  1. >>> someone = {'name''Wang''age'19'hobbies': ['sing songs''dance''basketball']} 
  2. >>> for value in someone.values(): 
  3. ...     print(value) 
  4. ... 
  5. Wang 
  6. 19 
  7. ['sing songs''dance''basketball'

 

文章“【Python基礎知識】Python字典方法匯總(上)”已幫助

>>本文地址:http://liujunjsxg.cn/zhuanye/2020/51513.html

THE END  

聲明:本站稿件版權均屬中公教育優(yōu)就業(yè)所有,未經許可不得擅自轉載。

1 您的年齡

2 您的學歷

3 您更想做哪個方向的工作?

獲取測試結果
  • 大前端大前端
  • 大數(shù)據(jù)大數(shù)據(jù)
  • 互聯(lián)網營銷互聯(lián)網營銷
  • JavaJava
  • Linux云計算Linux
  • Python+人工智能Python
  • 嵌入式物聯(lián)網嵌入式
  • 全域電商運營全域電商運營
  • 軟件測試軟件測試
  • 室內設計室內設計
  • 平面設計平面設計
  • 電商設計電商設計
  • 網頁設計網頁設計
  • 全鏈路UI/UE設計UI設計
  • VR/AR游戲開發(fā)VR/AR
  • 網絡安全網絡安全
  • 新媒體與短視頻運營新媒體
  • 直播帶貨直播帶貨
  • 智能機器人軟件開發(fā)智能機器人
 

快速通道fast track

近期開班時間TIME