「python」字典

常用函數

750uploading.4e448015.gif轉存失敗重新上傳取消

常用方法

 

1. 理解字典

我們以一個例子來講述什麼是字典:

people_0 = {'first_name':'琪','last_name':'張','age':18,'city':'北京'}#將這個人的信息存在字典中
print(people_0['first_name'])#一一打印出來
print(people_0['last_name'])
print(people_0['age'])
print(people_0['city'])
#打印輸出
琪
張
18
北京

2.字典的基本使用

# 創建一個字典
aline_0 = {'color':'green','points':'5'}
print(aline_0)

#使用該字典中和鍵point相關聯的值
new_point = aline_0['points']
print("you are earned "+ str(new_point)+" point!")

#增加鍵值對
aline_0['x_point'] = 0
aline_0['y_point'] = 10
print(aline_0)

#修改鍵值
aline_0['color'] = 'yellow'
print(aline_0)

#刪除鍵值對
del  aline_0['points']
print(aline_0)
print()

 

3.遍歷

#遍歷
Programming_vocabulary = {
    'class':'類',
    'abstract':'抽象',
    'access':'存取',
    'object':'對象',
    'out':'輸出',
    'run':'運行',
    'print':'打印',
    }
for voc,meaning in Programming_vocabulary.items():
    print(voc.title()+" : "+ meaning)
    #print(voc+" : "+ meaning)
print()

Class : 類
Abstract : 抽象
Access : 存取
Object : 對象
Out : 輸出
Run : 運行
Print : 打印

 

字典名.keys()

#遍歷所有的鍵 字典名.keys()
for voc in Programming_vocabulary.keys():
    print(voc)
print()
class
abstract
access
object
out
run
print

 

字典名.values()

#遍歷所有的值 字典名.values()
#需要注意的是,如果需要打印出來的值是獨一無二的,則需要對包含重複元素的列表調用set() ,可讓Python找出列表中獨一無二的元素,並使用這些元素來創建一個集合。
for meaning in Programming_vocabulary.values():
    print(meaning)
print()
類
抽象
存取
對象
輸出
運行
打印

 

4 嵌套

有時候會將字典存儲於列表中,或將列表作爲存儲在字典中,這就稱之爲嵌套。

4.1 字典列表

我們使用range()產生30個外星人:

#嵌套 --- 字典中嵌套列表
#創建一個用於存儲外星人的空列表
aliens = []

for alien_number in range(30):
    new_alien = {'color':'yellow','points':'5','speed':'slow'}
    aliens.append(new_alien)

for alien in aliens[:5]:
    print(alien)
print("...")

#len()計算列表的長度
print("total number of aliens : " + str(len(aliens)))

 


{'color': 'yellow', 'points': '5', 'speed': 'slow'}
{'color': 'yellow', 'points': '5', 'speed': 'slow'}
{'color': 'yellow', 'points': '5', 'speed': 'slow'}
{'color': 'yellow', 'points': '5', 'speed': 'slow'}
{'color': 'yellow', 'points': '5', 'speed': 'slow'}
...
total number of aliens : 30

這裏創建的30個外星人每一個都是獨立的,可對其進行修改,假如我們將前五個外星人的
顏色改爲黃色,點數改爲10個,速度改爲fast。

#修改
aliens = []
for alien_number in range(30):
    new_alien = {'color':'green','points':'5','speed':'slow'}
    aliens.append(new_alien)

for alien_temp in  aliens[0:5]:
    if alien_temp['color'] == 'green':
        alien_temp['color'] = 'yellow'
        alien_temp['points'] = '10'
        alien_temp['speed'] = 'fast'


for alien in  aliens[0:6]:
    print(alien)

 

{'color': 'yellow', 'points': '10', 'speed': 'fast'}
{'color': 'yellow', 'points': '10', 'speed': 'fast'}
{'color': 'yellow', 'points': '10', 'speed': 'fast'}
{'color': 'yellow', 'points': '10', 'speed': 'fast'}
{'color': 'yellow', 'points': '10', 'speed': 'fast'}
{'color': 'green', 'points': '5', 'speed': 'slow'}


4.2 在字典中存儲列表


每當需要在字典中將一個鍵關聯到多個值時,都可以在字典中嵌套一個 列表。
例:喜歡的地方 :創建一個名爲favorite_places 的字典。在這 個字典中,將三個人的名字用作鍵;對於其中的每個人,都存儲他 喜歡的1~3個地方。遍歷這個字典,並將其中每個人的名字及其喜 歡的地方打印出來。

fovourate_places = {
    'lily' : ['xihu','xizang','tiananman'],
    'lilian' : ['xihai','yiheyuan','caotang'],
    'bily' : ['hunan','meiguo','penghuwan'],
}
for name,places in fovourate_places.items():
    print("\n" + name.title() + "'s facourite places are:")
    for place in places:
        print("\t" + place.title())
Lily's facourite places are:
	Xihu
	Xizang
	Tiananman

Lilian's facourite places are:
	Xihai
	Yiheyuan
	Caotang

Bily's facourite places are:
	Hunan
	Meiguo
	Penghuwan


 

4.3 在字典中存儲字典


例如,如 果有多個網站用戶,每個都有獨特的用戶名,可在字典中將用戶名作爲 鍵,然後將每位用戶的信息存儲在一個字典中,並將該字典作爲與用戶名相關聯的值。在下面的程序中,對於每位用戶,我們都存儲了其三項 信息:名、姓和居住地;爲訪問這些信息,我們遍歷所有的用戶名,並訪問與每個用戶名相關聯的信息字典:
我們首先定義了一個名爲users 的字典,其中包含兩個鍵:用戶 名’aeinstein’ 和’mcurie’ ;與每個鍵相關聯的值都是一個字典,其 中包含用戶的名、姓和居住地。
 

#嵌套 --- 字典中存儲字典
users = {
    'aeinstein':{
        'first':'albert',
        'last':'einstein',
        'location':'princeton',
    },
    'mcurie':{
        'first':'maire',
        'last':'curie',
        'location':'paris',
    },
}
for username,user_info in users.items():
    print("\nUsername "+ username)
    full_name = user_info['first'] + " " + user_info['last']
    location = user_info['location']
    print("\tFull name: " + full_name)
    print("\tLocation: "+ location)

 

Username aeinstein
	Full name: albert einstein
	Location: princeton

Username mcurie
	Full name: maire curie
	Location: pari

 

轉載:https://blog.csdn.net/qq_40074819/article/details/104274178

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章