字典的用途
字典是python提供的一種常用的資料結構,它用於存放具有對映關係的資料。 字典相當於儲存了兩組資料,其中一組資料是關鍵資料,被稱為 key;另一組資料可通過 key 來訪問,被稱為 value。形象地看,字典中 key 和 value 的關聯關係如下圖所示:
注意:key是十分關鍵的資料,而且訪問value的時候需要通過key進行訪問,因此字典的key不允許重複。
建立和使用字典
使用dict函式建立
可以使用函式 dict 從其他對映或鍵值對序列建立字典
items=[('name','god'),('age',42)]
d=dict(items)
print(d)
# 結果為
# 如果不為dict函式傳入資料,則會建立乙個空字典
t=dict()
print(t)
# 結果為 {}
除了傳遞鍵值對序列建立字典還可以指定關鍵字引數來建立字典
d=dict(name='god',age=12)
print(d)
# 結果為
字典的基本用法
1.通過key訪問value
items =
print(items['age'])
# 結果為 42
2.通過key新增key-value對
items =
items['***'] = 'man'
print(items)
# 結果為
3.通過key刪除key-value對
items =
del items['name']
print(items)
#結果為
4.通過key值修改值
items =
items['name']='james'
print(items)
# 5.通過key判斷指定的key-value是否存在
items =
print('name' in items)
print('***' in items)
# 結果為 true false
字典常用方法
1.clear()
clear() 用於清空字典中所有的 key-value 對,對乙個字典執行 clear() 方法之後,該字典就會變成乙個空字典,例子如下所示:
man=
print(man)
# 結果為
man.clear()
print(man)
# 結果為 {}
2.get()方法
get()方法是根據key值來獲取value,使用get()方法的時候,如果key值不存在則會返回none。示例如下:
man=
print(man.get('name'))
# 結果為 'james'
print(man.get('***'))
# 結果為none
3.update()方法
update()方法可使用乙個字典所包含的 key-value對來更新己有的字典。在執行 update()方法時,如果被更新的字典中己包含對應的 key-value對,那麼原value 會被覆蓋;如果被更新的字典中不包含對應的 key-value對,則該key-value對被新增進去。例如如下**:
man=
man.update()
print(man)
# 結果為
man.update()
print(man)
# 結果為:
4.items()、keys()、values()
items()、keys()、values() 分別用於獲取字典中的所有 key-value 對、所有 key、所有 value。這三個方法依次返回 dict_items、dict_keys 和 dict_values 物件。
man=
print(man.items())
# 結果為: dict_items([('name', 'tom'), ('age', 12), ('***', 'man')])
print(man.keys())
# 結果為 dict_keys(['name', 'age', '***'])
print(man.values())
# 結果為 dict_values(['tom', 12, 'man'])
5.pop()方法
pop() 方法用於獲取指定 key 對應的 value,並刪除這個 key-value 對。
man=
print(man.pop('name'))
print(man)
# 結果為 james和
6.setdefault()方法
setdefault() 方法也用於根據 key 來獲取對應 value 的值。但該方法有乙個額外的功能,即當程式要獲取的 key 在字典中不存在時,該方法會先為這個不存在的 key 設定乙個預設的 value,然後再返回該 key 對應的 value。總之,setdefault() 方法總能返回指定 key 對應的 value;如果該 key-value 對存在,則直接返回該 key 對應的 value;如果該 key-value 對不存在,則先為該 key 設定預設的 value,然後再返回該 key 對應的 value。 如下**示範了 setdefault() 方法的用法:
cars =
# 設定預設值,該key在dict中不存在,新增key-value對
print(cars.setdefault('porsche', 9.2)) # 9.2
print(cars)
# 設定預設值,該key在dict中存在,不會修改dict內容
print(cars.setdefault('bmw', 3.4)) # 8.5
print(cars)
7.fromkeys()方法
fromkeys() 方法使用給定的多個 key 建立字典,這些 key 對應的 value 預設都是 none;也可以額外傳入乙個引數作為預設的 value。
# 使用列表建立包含2個key的字典
a_dict = dict.fromkeys(['a', 'b'])
print(a_dict) #
# 使用元組建立包含2個key的字典
b_dict = dict.fromkeys((13, 17))
print(b_dict) #
# 使用元組建立包含2個key的字典,指定預設的value
c_dict = dict.fromkeys((13, 17), 'good')
print(c_dict) #
python之字典的作用
1.關鍵字 值的對應轉換 1.把str轉換為int的函式 reduce f,x1,x2,x3,x4 f f f x1,x2 x3 x4 map 函式接收兩個引數,乙個是函式,乙個是序列,map將傳入的函式依次作用到序列的每個元素,並把結果作為新的list返回。考慮到字串str也是乙個序列!對乙個序列...
socket程式設計各步驟作用簡述之python版
python的標準庫裡面自帶了socket模組,直接可以匯入,連線方式和其它程式語言基本也是一樣的,因為初學socket程式設計所以每一步具體起到什麼作用還不是很明確,而網上基本都是直接 大同小易 只有自己試了幾次才知道。來看一下比喻的socket連線圖 基本上乙個程式對應乙個埠,乙個執行緒監聽乙個...
python內建字典 python中字典的內建方法
python字典包含了以下內建方法 功能 字典 clear 函式用於刪除字典內所有元素。語法 dict.clear 引數 無 返回值 沒有任何返回值。dict print 字典長度 d len dict 字典長度 2 dict.clear print 字典刪除後長度 d len dict 字典刪除後...