首頁>技術>

目錄:

字典型別的定義

字典處理函式及方法

1 字典型別的定義

字典型別是鍵與值的對映,其中,對映是一種鍵(索引)和值(資料)的對應

例1

>>> d={"Me":"beautiful","You":"handsome"}

"Me"和"You"是鍵,"beautiful","handsome"是值,{"Me":"beautiful","You":"handsome"}是個字典,也就是鍵值對的集合

特點

*鍵值對之間無序

*採用大括號{}和dict()建立

*鍵值對用冒號:表示

*鍵值對:鍵是資料索引的擴充套件

為什麼說是擴充套件?

比如,["pyothon","interesting"]這個序列,是由0...N整數作為資料的預設索引的,"pyothon"的索引是0,"interesting"的索引是1,而在字典中是由使用者為資料定義索引的。

2 字典處理函式及方法

2.1建立函式的幾種方法

1)直接建立空字典

>>>d = {}

>>>print(type(dic))

<class 'dict'>

2)直接賦值建立字典

>>>d = {'name': 'Jack', 'age': 18, 'height': 180}

>>>print(dic)

{'name': 'Jack', 'age': 18, 'height': 180}

這種建立方式最為常見

3)透過關鍵字dict和關鍵字引數建立

d = dict(name='Jack', age=18, height=180)

print(dic)

# 輸出結果:{'name': 'Jack', 'age': 18, 'height': 180}

例2

輸出一個類似{ i : i*i }的字典

d = dict()

for i in range(1, 5):

dic[i] = i * i

print(dic)

# 輸出結果:{1: 1, 2: 4, 3: 9, 4: 16}

以下幾種方法初學者比較少用,可以先參考一下

4)透過關鍵字dict和二元組列表建立

lis = [('name', 'Jack'), ('age', 18), ('height', 180)]

d = dict(lis)

print(d)

# 輸出結果:{'name': 'Jack', 'age': 18, 'height': 180}

5)透過關鍵字dict和zip建立

d = dict(zip('abc', [1, 2, 3]))

print(d)

# 輸出結果:{'a': 1, 'b': 2, 'c': 3}

6)透過字典推導式建立

d = {i: i ** 2 for i in range(1, 5)}

print(d)

# 輸出結果:{1: 1, 2: 4, 3: 9, 4: 16}

7). 透過dict.fromkeys()建立

注意:通常用來初始化字典, 設定value的預設值

d = dict.fromkeys(range(4), 'x')

print(d)

# 輸出結果:{0: 'x', 1: 'x', 2: 'x', 3: 'x'}

2.2字典的函式或方法

例3

1)先建立個字典

>>> d = {"中國":"北京","美國":"華盛頓","法國":"巴黎"}

>>>del d["中國"]

>>>print(d)

{"美國":"華盛頓","法國":"巴黎"}

3)查詢鍵是否存在字典中

>>>"中國"in d

True

4)返回字典中所有的鍵

>>>d.keys()

dict_keys(['中國', '美國', '法國'])

5)返回字典中所有的值

>>>d.values()

dict_values(['北京', '華盛頓', '巴黎'])

例4

1)先建立個字典

>>>d = {"中國":"北京","美國":"華盛頓","法國":"巴黎"}

>>>d.get("中國","伊斯蘭堡")

'北京'

>>>d.get("巴基斯坦","伊斯蘭堡")

'伊斯蘭堡'

d.get是最重要的一個方法

2)隨機從字典中取出一個鍵值對

>>>d.popitem()

('美國', '華盛頓')

注意是以元組的形式返回

23
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 被Netty搞昏了頭,先學一下冪等性壓壓驚吧