python图的字典表示_Python dict字典精讲
Python 字典也是一個集合,但是其每個元素包含兩部分——鍵和值,如圖1所示:
圖1:字典模型
和列表一樣的是,字典對元素個數沒有限制,可以動態添加和刪除元素;和列表不同的是,字典對元素自動按照某種規則排序,所以在插入元素時不能指定位置。
Python 創建字典
可以用多種方法來創建一個沒有元素的字典,即空的字典,下面演示了3種創建空字典的方法。
>>> a = {} # 第一種方法
>>> type(a)
>>> b = dict() # 第二種方法
>>> type(b)
>>> c = dict([]) # 第三種方法:使用空的列表作為輸入
>>> type(c)
下面創建一個指定了元素初始值的字典。
>>> a = {1: 100, 2: 200} # 包含z個元素,一個是1:100,另外一個是2:200
>>> type(a)
Python 字典的基本操作
本節介紹字典的基本操作,如計算字典中元素個數、修改字典內容等。
1) 計算元素個數——len()
如果字典為空,返回 0;否則返回一個正整數表示鍵-值對的個數。
>>> a = {1: 100, 2: 200} # 字典a包含兩個元素
>>> len(a) # 字典a的元素個數為2
2
>>> b = dict() # 創建一個空的字典b
>>> len(b) # 字典b的元素個數為0
0
2) 添加元素
如果該鍵不存在,則新建該鍵。
>>> a = {1: 100, 2: 200}
>>> a[3] = 300 # 添加元素3:300,鍵為3,值為300
>>> a
{1: 100, 2: 200, 3: 300}
3) 修改元素值
如果該鍵已經存在,則修改該鍵的值。
>>> a = {1: 100, 2: 200}
>>> a
{1: 100, 2: 200}
>>> a[1] = 1000
>>> a
{1: 1000, 2: 200}
4) 得到元素值——get()
如果該鍵存在,返回該鍵對應的值;否則返回 None。
>>> a = {1: 100, 2: 200}
>>> a.get(1) # 鍵1存在,返回其對應的值100
100
>>> a.get(8) # 鍵8不存在,返回None
>>> r = a.get(8)
>>> r is None
True
5) 更新值——a.update(字典b)
對于字典 b 中的元素,如果其存在于字典 a 中,則用 b 的值覆蓋 a 的值;如果不存在于 a 中,則添加一個新的元素到 a 中。該過程 a 發生了變化而 b 沒有變化。該函數沒有返回值。
>>> a = {1: 100, 2: 200} # 定義字典a
>>> b = {1: 1000, 3: 3000} # 定義字典b
>>> a.update(b) # 用字典b的內容來更新a的內容
>>> a # 字典a發生了變化
{1: 1000, 2: 200, 3: 3000}
>>> b # 字典b沒有發生了變化
{1: 1000, 3: 3000}
6) 是否存在某個鍵——has_key(鍵)
如果存在該鍵,返回 True;否則返回 False。
>>> a = {1: 100, 2: 200} # 定義字典a,有兩個鍵1和2
>>> a.has_key(1) # 是否存在鍵1?存在
True
>>> a.has_key(3) # 是否存在鍵3?不存在
False
7) 得到鍵組成的列表——key()
該函數返回一個列表,每個元素都是原來字典的鍵。
>>> a = {1: 100, 2: 200}
>>> r = a.keys()
>>> type(r)
>>> r
[1, 2]
8) 得到值組成的列表——values()
該函數返回一個列表,每個元素都是原來字典的值。
>>> a = {1: 100, 2: 200}
>>> r = a.values()
>>> type(r)
>>> r
[100, 200]
如果有重復的值,則在返回列表中也會出現重復的元素。
>>> a = {1: 100, 2: 200, 3: 200}
>>> r = a.values()
>>> type(r)
>>> r
[100, 200, 200] # 其中有重復的元素200
9) 刪除所有元素——clear()
該操作會丟掉所有的元素,但是字典自身還存在。
>>> a = {1: 100, 2: 200, 3: 200} # 創建字典a
>>> len(a) # 字典a包含3個元素
3
>>> id(a) # 查看字典a的id
48498080
>>> a.clear() # 刪除字典a的所有元素
>>> len(a) # 字典a沒有元素了
0
>>> id(a) # 字典a的id沒有發生變化
10 48498080
10) 刪除指定鍵的元素——pop(鍵)
如果指定的鍵不存在,拋出 KeyError 異常。
>>> a = {1: 100, 2: 200, 3: 200} # 創建字典a,3個元素
>>> a
{1: 100, 2: 200, 3: 200}
>>> len(a) # 字典a的元素個數為3
3
>>> a.pop(1) # 刪除鍵為1的元素,返回值是該鍵對象的值
100
>>> a # 刪除后字典a剩余兩個元素
{2: 200, 3: 200}
>>> a.pop(10) # 刪除鍵10,但是不存在該鍵
Traceback (most recent call last):
File "", line 1, in
KeyError: 10
也可以指定默認值,即如果指定的鍵不存在,返回該默認值。這時就不會拋出異常了。
>>> a = {1: 100, 2: 200, 3: 200} # 創建一個字典
>>> a.pop(100, 888) # 888是默認值
888 # 指定的鍵100不存在,所以返回888
>>> a # 原來的字典沒有發生任何變化
{1: 100, 2: 200, 3: 200}
11) in 操作符
該操作符用于判斷某個值是否為字典的某個鍵,即是否存在這樣一個鍵,其值等于指定的值。
>>> a = {1: 100, 2: 200, 3: 200}
>>> 1 in a # 是否存在值為1的鍵
True
>>> 100 in a # 是否存在值為100的鍵
False
12) not in 操作符
該操作符用于判斷是否不存在這樣的一個鍵,該鍵的值為指定的值。如果不存在,返回 True;否則返回 False。
>>> a = {1: 100, 2: 200, 3: 200}
>>> 1 not in a # 是否不值為1的鍵
False
>>> 100 not in a # 是否不值為100的鍵
True
總結
以上是生活随笔為你收集整理的python图的字典表示_Python dict字典精讲的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python学习笔记:函数
- 下一篇: openfire php注册,openf