python字典dict(15)-創(chuàng)新互聯(lián)

前面的課程講解了字符串str/列表list/元組tuple,還有最后一種比較重要的數(shù)據(jù)類型也需要介紹介紹,那就是python字典,俗稱:dict.

讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名注冊、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、廣元網(wǎng)站維護、網(wǎng)站推廣。

python中的字典可與字符串/列表/元組不同,因為字典dict需要由兩部分組成,分別是key和value,簡稱:鍵值對,下面具體講解一下關(guān)于字典的特點:

1.由一個或者多個鍵值對構(gòu)成,鍵值對的類型可以不相同也可以相同;

2.字典中的鍵值對需要寫在{}中括號內(nèi)部,鍵值對中的key和value用:隔開,鍵值對與鍵值對之間用逗號隔開;

3.字典是一個無序的集合;

4.字典中key具有唯一性;

python 字典dict(15)

定義一個字典:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(個人博客地址): shuopython.com

@WeChat Official Account(微信公眾號):猿說python

@Github:www.github.com

@File:python_dict.py

@Time:2019/9/27 20:45

@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累!

"""

dict1=dict()# 定義一個空字典

print(dict1)

print(type(dict1))# 輸出字典類型 dict

print(len(dict1))# 獲取字典鍵值對數(shù)量

print("***"*20)# 小竅門:直接打印60 個 *

#字典可以有一個或者多個鍵值對構(gòu)成,鍵值對與鍵值對之間使用逗號隔開

# "name" / "age" / "sing_gou" 是key

# "隔壁老王" / 42 / True 是value

dict2={"name":"隔壁老王","age":42,"singe_dog":True}

print(dict2)

print(type(dict2))# 輸出字典類型 dict

print(len(dict2))# 獲取字典鍵值對數(shù)量

print("***"*20)# 小竅門:直接打印60 個 *

# 字典中出現(xiàn)了兩個一樣的key:"age",默認后面的value會覆蓋前面的value

dict3={"name":"隔壁老王","age":42,"singe_dog":True,"age":15}

print(dict3)

輸出:

1

2

3

4

5

6

7

8

9

{}

<class'dict'>

0

************************************************************

{'name':'隔壁老王','age':42,'singe_dog':True}

<class'dict'>

3

************************************************************

{'name':'隔壁老王','age':15,'singe_dog':True}

注意:如果字典中出現(xiàn)相同的key值,只有最后一個key/value有效,前面相同的key/value會被覆蓋.這就是字典dict所謂的唯一性.

在python開發(fā)過程中,對于字典使用最多的莫過于增刪改查以及遍歷,下面我們一一講解:

一.字典dict增加數(shù)據(jù)

如果想要在字典中添加數(shù)據(jù),直接賦值就可以,比較簡單,跟上示例代碼演示一波:

1

2

3

4

5

6

7

dict1=dict()# 定義一個空字典

print(dict1)# 輸出一個空的字典

dict1["name"]="猿說python"# 添加鍵值對 "name":"猿說python" 到 dict1

dict1["url"]="shuopython.com"# 添加鍵值對 "url":"shuopython.com" 到 dict1

print(len(dict1))# 獲取字典鍵值對數(shù)量

print(dict1)# 輸出整個字典

輸出結(jié)果:

1

2

3

{}

2

{'name':'猿說python','url':'shuopython.com'}

二.字典dict刪除數(shù)據(jù)

字典是無序的,每個鍵值對沒有對應(yīng)的索引值,這也是字典與字符串/列表/元祖的區(qū)別。刪除字典中的數(shù)據(jù),需要根據(jù)鍵值對中的key值來刪除對應(yīng)的鍵值對,刪除使用?del?關(guān)鍵字,實例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

dict1={"name":"zhangsan","age":38,"sing_dog":True}# 定義一個字典

print(dict1)# 輸出刪除之前的字典

# 刪除key等于"name"對應(yīng)的鍵值對

deldict1["name"]

print(dict1)

# 刪除key等于"age"對應(yīng)的鍵值對

deldict1["age"]

print(dict1)

# 刪除key等于"sing_dog"對應(yīng)的鍵值對

deldict1["sing_dog"]

print(dict1)

輸出結(jié)果:

1

2

3

4

{'name':'zhangsan','age':38,'sing_dog':True}

{'age':38,'sing_dog':True}

{'sing_dog':True}

{}

三.字典dict修改數(shù)據(jù)

字典是無序的,每個鍵值對沒有對應(yīng)的索引值,這也是字典與字符串/列表/元祖的區(qū)別。修改字典中的鍵值對數(shù)據(jù),操作和刪除數(shù)據(jù)一樣,直接根據(jù)鍵值對中的key值操作即可,實例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

dict1={"name":"zhangsan","age":38,"sing_dog":True}# 定義一個字典

print(dict1)# 輸出字典

# 修改key等于"name"對應(yīng)的value

dict1["name"]="隔壁老王"

print(dict1)# 輸出字典

# 修改key等于"age"對應(yīng)的value

dict1["age"]=18

print(dict1)# 輸出字典

# 修改key等于"sing_dog"對應(yīng)的value

dict1["sing_dog"]=False

print(dict1)# 輸出字典

輸出結(jié)果:

1

2

3

4

{'name':'zhangsan','age':38,'sing_dog':True}

{'name':'隔壁老王','age':38,'sing_dog':True}

{'name':'隔壁老王','age':18,'sing_dog':True}

{'name':'隔壁老王','age':18,'sing_dog':False}

四.字典dict查詢數(shù)據(jù)

字典是無序的,每個鍵值對沒有對應(yīng)的索引值,這也是字典與字符串/列表/元祖的區(qū)別。查詢字典中的鍵值對數(shù)據(jù),操作和刪除數(shù)據(jù)/修改數(shù)據(jù)一樣,直接根據(jù)鍵值對中的key值操作即可,實例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

dict1={"name":"zhangsan","age":38,"sing_dog":True}# 定義一個字典

print(dict1)# 輸出字典

# 查詢key等于"name"對應(yīng)的value

print(dict1["name"])

# 查詢key等于"age"對應(yīng)的value

print(dict1["age"])

# 查詢key等于"sing_dog"對應(yīng)的value

print(dict1["sing_dog"])

輸出結(jié)果:

1

2

3

4

{'name':'zhangsan','age':38,'sing_dog':True}

zhangsan

38

True

五.字典dict常用函數(shù)

1.把兩個字典合并到一個字典,使用函數(shù)update()將一個字典添加到另外一個字典的末尾;
2.清空字典,使用函數(shù)clear()清空字典;

示例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

dict1={"name":"zhangsan","age":38}# 定義一個字典

print(dict1)# 輸出字典

dict2={"sing_dog":True}# 定義一個字典

print(dict2)

print("***"*20)# 小竅門:直接答應(yīng)60個*

# update()函數(shù):將一個字典添加到另外一個字典的末尾

dict1.update(dict2)

print(dict1)# 輸出字典

print("***"*20)# 小竅門:直接答應(yīng)60個*

# 情況字典dict1

dict1.clear()

print(dict1)# 空字典

# 情況字典dict2

dict2.clear()

print(dict2)# 空字典

輸出效果:

1

2

3

4

5

6

7

{'name':'zhangsan','age':38}

{'sing_dog':True}

************************************************************

{'name':'zhangsan','age':38,'sing_dog':True}

************************************************************

{}

{}

六.字典dict遍歷

1.使用dict.items()方法遍歷字典,該方法的返回值是一個元組,等價于遍歷元組,示例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

dict1={"name":"zhangsan","age":38,"sing_dog":True,"height":"155cm"}# 定義一個字典

print(dict1)# 輸出字典

print("***"*20)# 小竅門:直接答應(yīng)60個*

# dict.items()方法,返回元組數(shù)據(jù),類似遍歷元組操作

forxindict1.items():

print(x,type(x))

print("***"*20)??# 小竅門:直接答應(yīng)60個*

# dict.items()方法經(jīng)典寫法,直接獲取key/values

forx,yindict1.items():

print(x,y)

輸出結(jié)果:

1

2

3

4

5

6

7

8

9

10

11

{'name':'zhangsan','age':38,'sing_dog':True,'height':'155cm'}

************************************************************

('name','zhangsan')<class'tuple'>

('age',38)<class'tuple'>

('sing_dog',True)<class'tuple'>

('height','155cm')<class'tuple'>

************************************************************

namezhangsan

age38

sing_dogTrue

height155cm

2.根據(jù)字典中key或者value遍歷字典,代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

dict1={"name":"zhangsan","age":38,"sing_dog":True,"height":"155cm"}# 定義一個字典

print(dict1)# 輸出字典

print("***"*20)# 小竅門:直接答應(yīng)60個*

# 方法一:根據(jù)key值遍歷

forkeyindict1.keys():

print(key,dict1[key])??# dict1[key] 等價鍵值對中key對應(yīng)的value

print("***"*20)# 小竅門:直接答應(yīng)60個*

# 方法二:根據(jù)value值遍歷

forvalueindict1.values():

print(value)

輸出結(jié)果:

1

2

3

4

5

6

7

8

9

10

11

{'name':'zhangsan','age':38,'sing_dog':True,'height':'155cm'}

************************************************************

namezhangsan

age38

sing_dogTrue

height155cm

************************************************************

zhangsan

38

True

155cm

python 字典dict(15)

七.重點總結(jié)

1.注意字典的特點

2.注意字典/字符串/列表/元組的區(qū)別

3.注意字典的遍歷方式

4.注意字典/字符串/列表/元組之間的相互轉(zhuǎn)換

猜你喜歡:

1.python字符串(str)

2.python列表(list)

3.python元組(tuple)

轉(zhuǎn)載請注明:猿說Python???python 字典dict

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)頁標題:python字典dict(15)-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://muchs.cn/article28/csgecp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站網(wǎng)站導(dǎo)航、動態(tài)網(wǎng)站、網(wǎng)站營銷、小程序開發(fā)用戶體驗

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作