在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Python/ Python字典
Python樹遍歷算法
Python雙端隊列
Python隊列
Python回溯
Python棧
Python數據結構開發(fā)環(huán)境
Python數據結構簡介
Python算法分析
Python圖遍歷算法
Python搜索算法
Python圖
Python鏈表
Python集合
Python元組
Python字典
Python矩陣
Python高級鏈表(雙向鏈表)
Python搜索樹
Python二維數組
Python堆
Python節(jié)點
Python排序算法
Python數據結構
Python遞歸
Python列表
Python數組
Python算法設計
Python哈希表

Python字典

在Python字典中,每個鍵和值之間使用冒號(:)分隔,每個項之間用逗號(,)隔開,整個字典數據用大括號括起來。 如果是沒有任何項目的空字典則使用兩個大括號編寫,如下所示:{}。

鍵在字典中是唯一的,而值可能不是唯一的。 字典的值可以是任何類型,但鍵必須是不可變的數據類型,例如:字符串,數字或元組。

訪問字典中的值

要訪問字典元素,可以使用方括號和鍵來獲取它的值。 以下是一個簡單的例子 -

#!/usr/bin/python

dict = {'Name': 'Maxsu', 'Age': 27, 'Class': 'First'}
print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])

執(zhí)行上面示例代碼,得到以下結果 -

dict['Name']:  Maxsu
dict['Age']:  27

如果嘗試使用不屬于字典的鍵來訪問數據項,那么會得到錯誤,如下 -

#!/usr/bin/python

dict = {'Name': 'Maxsu', 'Age': 27, 'Class': 'First'}
print ("dict['Alice']: ", dict['Gender'])

執(zhí)行上面示例代碼,得到以下結果 -

Traceback (most recent call last):
  File "F:\worksp\python\test.py", line 4, in <module>
    print ("dict['Alice']: ", dict['Gender'])
KeyError: 'Gender'

更新字詞

可以通過添加新條目或鍵值對,修改現有條目或刪除現有條目來更新字典,如簡單示例中所示 -

#!/usr/bin/python

dict = {'Name': 'Maxsu', 'Age': 25, 'Class': 'First'}
dict['Age'] = 28; # update existing entry
dict['School'] = "DPS School"; # Add new entry

print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])

執(zhí)行上面示例代碼,得到以下結果 -

dict['Age']:  28
dict['School']:  DPS School

刪除字典元素

可以刪除單個字典元素,也可以清除字典的全部內容。 也可以在一個操作中刪除整個字典。
要顯式刪除整個字典,只需使用del語句。 以下是一個簡單的例子 -

#!/usr/bin/python

dict = {'Name': 'Maxsu', 'Age': 27, 'Class': 'First'}
del dict['Name']; # remove entry with key 'Name'
dict.clear();     # remove all entries in dict
del dict ;        # delete entire dictionary

print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])

執(zhí)行上面示例代碼,得到以下結果 -

請注意,由于執(zhí)行del dict之后,字典不再存在所以這里會引發(fā)異常 -

Traceback (most recent call last):
  File "F:\worksp\python\test.py", line 8, in <module>
    print ("dict['Age']: ", dict['Age'])
TypeError: 'type' object is not subscriptable

字典鍵的屬性

字典值沒有限制。 它們可以是任何任意的Python對象,無論是標準對象還是用戶定義的對象。 但是,對于鍵就有所限制了。

關于字典鍵有兩點要記住 -

第1點: 每個鍵不得超過一個條目,這意味著不允許重復鍵。 在分配過程中遇到重復鍵時,則以最后一次分配的為準。 例如 -

#!/usr/bin/python

dict = {'Name': 'maxsu', 'Age': 27, 'Name': 'Manni'}
print ("dict['Name']: ", dict['Name'])

當上面的代碼被執(zhí)行時,它會產生以下結果 -

dict['Name']:  Manni

第2點: 鍵必須是不可變的。 這意味著您可以使用字符串,數字或元組作為字典的鍵,但不允許使用['key']。 以下是一個簡單的例子 -

#!/usr/bin/python

dict = {['Name']: 'Maxsu', 'Age': 27}
print ("dict['Name']: ", dict['Name'])

當執(zhí)行上面示例代碼,得到以下結果 -

Traceback (most recent call last):
   File "test.py", line 3, in <module>
      dict = {['Name']: 'Maxsu', 'Age': 27};
TypeError: list objects are unhashable