Python學習(四)數據結構 —— dict

詞典類型 dict

  字典由鍵(key)和對應值(value)成對組成。字典也被稱做關聯數組或哈希表。數組

  dict 賦值

  dict 總體放在花括號{}中,每一個鍵與值用冒號隔開(:),每對用逗號分割; d = {'one':1, 'two':2, 'three':3} spa

  鍵必須獨一無二,但值則沒必要;值可取任何數據類型,如字符串,數或元組;若建立時同一個鍵被賦值兩次,後一個值會被記住;code

  鍵必須不可變,因此能夠用數,字符串或元組充當,用列表就不行blog

  用 dict() 強制轉換,可接受如下形式,參見下例three

1 a = dict(one=1, two=2, three=3)
2 b = {'one': 1, 'two': 2, 'three': 3}
3 c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))
4 d = dict([('two', 2), ('one', 1), ('three', 3)])
5 e = dict({'three': 3, 'one': 1, 'two': 2})
6 print(a == b == c == d == e)

 

   dict 操做

    詞典類型適用於對應鍵的取值,十分實用;對於dict的訪問、修改、增長、刪除等操做須要熟練掌握ip

    如下列出了經常使用的用法,詳細請參考:字符串

    訪問值、修改值

      dict_name['key_name'] 可直接訪問值,可直接更改該值it

1 d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
2 print(d['Name'],d['Age'],d['Class'])            # 訪問鍵值訪問 dict_name['key_name']
3 print("%s's age is %d, class is: %s." %(d['Name'], d['Age'],d['Class']))    # 字符串輸出
4 # print(d['name'])                 # 無該鍵值,會報錯,注意大小寫
5 d['Age'] = 8
6 print(d['Age'])                    # 可直接修改鍵的數值,數值類型不限

 

    鍵的增長、刪除

      判斷key是否存在於dict中,使用 key_name in/not in dict_name;class

      增長鍵值即對新的鍵賦值 dict_name['new key_name'] = value ;刪除鍵值使用 del dict_name['key_name'];object

      清空詞典使用 dict_name.clear()

 1 d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
 2 print(d['Name'],d['Age'],d['Class'])            # 訪問鍵值訪問 dict['key_name']
 3 print("%s's age is %d, class is: %s." %(d['Name'], d['Age'],d['Class']))    # 字符串輸出
 4 # print(d['name'])                # 無該鍵值,會報錯,注意大小寫
 5 d['Age'] = 8
 6 print(d['Age'])                   # 可直接修改鍵的數值,數值類型不限
 7 print('Name' in d)                # 判斷鍵是否存在
 8 print('xxx' not in d)             # 判斷鍵是否不存在
 9 d['Sex'] = "Female"               # 增長鍵值直接賦值便可
10 print(d)
11 del d['Class']                    # 刪除鍵值
12 print(d)
13 # del d['Class']                  # 若無鍵值,會報錯
14 d.clear()                         # 清空dict
15 print(d)

 

    dict view objects

      len(dict_name) 返回詞典鍵值組合數,可單獨取出全部鍵 dict_name.keys() , 單獨取出全部的值 dict_name.values()

1 d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
2 print(len(d))                    # 鍵值的組合數量
3 print(d.keys(),type(d.keys()))   # 爲dict_keys 類型,可list()轉換爲list 或 set()轉換爲set
4 print(d.values())                # 爲dict_values 類型
5 print(d.items())                 # 爲dict_items 類型
相關文章
相關標籤/搜索