python內建字典 python中字典的內建方法

2021-10-19 20:43:42 字數 4625 閱讀 5221

python字典包含了以下內建方法:

功能:字典 clear() 函式用於刪除字典內所有元素。

語法:dict.clear()

引數:無

返回值:沒有任何返回值。

dict = print ("字典長度 : %d" % len(dict)) #字典長度 : 2

dict.clear()print ("字典刪除後長度 : %d" % len(dict)) #字典刪除後長度 : 0

功能:字典 copy() 函式返回乙個字典的淺複製。

語法:dict.copy()

引數:無

返回值:返回乙個字典的淺複製

dict =

dict2=dict.copy()print ("新複製的字典為 :",dict2) #輸出:新複製的字典為 :

直接賦值和 copy 的區別

dict =

dict2=dict

dict3=dict.copy()#淺拷貝: 引用物件

print ("新複製的字典dict2為 :",dict2) #輸出:新複製的字典dict2為 : #淺拷貝:深拷貝父物件(一級目錄),子物件(二級目錄)不拷貝,還是引用

print ("新複製的字典dict3為 :",dict3) #輸出:新複製的字典dict3為 :

#修改資料

dict['name'] = '張三'dict['num'].remove(2)print('修改資料後的字典dict為:',dict) #輸出:修改資料後的字典dict為:

#輸出結果

print('dict為:',dict) #輸出:dict為:

print('dict2為',dict2) #輸出:dict2為

print('dict3為',dict3) #輸出:dict3為

說明:dict2 其實是 dict 的引用(別名),所以輸出結果都是一致的,dict3 父物件進行了深拷貝,不會隨dict 修改而修改,子物件是淺拷貝所以隨 dict 的修改而修改。

功能:fromkeys() 函式用於建立乙個新字典,以序列 seq 中元素做字典的鍵,value 為字典所有鍵對應的初始值。

語法:dict.fromkeys(seq[,value])

引數:seq:字典鍵值列表。

value: 可選引數, 設定鍵序列(seq)對應的值,預設為 none。

返回值:返回乙個新字典。

seq = ('name', 'age', '***')

dict=dict.fromkeys(seq)print("新的字典為 : %s" % str(dict)) #輸出:新的字典為 :

dict= dict.fromkeys(seq,10)print("新的字典為 : %s" % str(dict)) #輸出:新的字典為 :

功能:get() 函式返回指定鍵的值。

語法:dict.get(key,default=none)

引數:key:字典中要查詢的鍵。

default: 如果指定的鍵不存在時,返回該預設值。

返回值:返回指定鍵的值,如果鍵不在字典中返回預設值 none 或者指定的預設值。

dict=

dict1= dict.get('name')print ("name 值為 : %s" % dict.get('name')) #輸出:name 值為 : 張三

功能:字典 in 操作符用於判斷鍵是否存在於字典中,如果鍵在字典 dict 裡返回 true,否則返回 false。

而 not in 操作符剛好相反,如果鍵在字典 dict 裡返回 false,否則返回 true。

語法:key in dict

引數:key:要在字典中查詢的鍵。

返回值:如果鍵在字典裡返回true,否則返回false。

dictname = #檢測 name 是否存在

if 'name' indictname:print("鍵 name 存在 dictname 中")else:print("鍵 name 不存在 dictname 中")#檢測 age 是否存在

if 'age' indictname:print("鍵 age 存在 dictname 中")else:print("鍵 age 不存在 dictname 中")#檢測 grade 是否存在

if 'grade' not indictname:print("鍵 grade 不存在 dictname 中")else:print("鍵 grade 存在 dictname 中")#檢測 *** 是否存在

if '***' not indictname:print("鍵 *** 不存在 dictname 中")else:print("鍵 *** 存在 dictname 中")

輸出:鍵 name 存在 dictname 中

鍵 age 存在 dictname 中

鍵 grade 存在 dictname 中

鍵 *** 不存在 dictname 中

功能:items() 方法以列表返回可遍歷的(鍵, 值) 元組陣列。

語法:dict.items()

引數:無

返回值:返回可遍歷的(鍵, 值) 元組陣列。

dictname = print(dictname.items()) #輸出:dict_items([('name', '張三'), ('age', 13), ('grade', 7)])

功能:字典 keys() 方法返回乙個可迭代物件,可以使用 list() 來轉換為列表。

語法:dict.keys()

引數:無

返回值:返回乙個迭代器。

dictname = #獲取字典中key值的迭代器

print("返回字典dictname中的key值:",dictname.keys()) #返回字典dictname中的key值: dict_keys(['name', 'age', 'grade'])

#將迭代器轉為列表

print(list(dictname.keys())) #['name', 'age', 'grade']

功能: values() 方法返回乙個迭代器,可以使用 list() 來轉換為列表,列表為字典中的所有值。

語法:dict.values()

引數:無

返回值:返回迭代器。

dictname = #獲取字典中 value 值的迭代器

print("返回字典dictname中的value值:",dictname.values()) #返回字典dictname中的value值: dict_values(['張三', 13, 7])

#將迭代器轉為列表

print(list(dictname.values())) #['張三', 13, 7]

功能:setdefault() 方法和 get()方法 類似, 如果鍵不已經存在於字典中,將會新增鍵並將值設為預設值。

語法:dict.setdefault(key,default=none)

引數:key:查詢的鍵值。

default: 鍵不存在時,設定的預設鍵值。

返回值:如果 key 在 字典中,返回對應的值。如果不在字典中,則插入 key 及設定的預設值 default,並返回 default ,default 預設值為 none。

dictname = print(dictname) #輸出:

print("age 鍵的值為 : %s" % dictname.setdefault('age', none)) #輸出:age 鍵的值為 : 13

print("*** 鍵的值為 : %s" % dictname.setdefault('***', '男')) #輸出:*** 鍵的值為 : 男

print("新字典為:", dictname) #輸出:新字典為:

功能:update()函式把字典引數 dict2 的 key/value(鍵/值) 對更新到字典 dict 裡。

語法:dict.update(dict2)

引數:dict:新增到指定字典dict裡的字典。

返回值:沒有任何返回值。

dictname =

dictname2=

dictname.update(dictname2)print("更新字典 dictname",dictname)#更新字典 dictname

功能:pop() 方法刪除字典給定鍵 key 所對應的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。

語法:dict.pop(key[,****ult])

引數:key:要刪除的鍵值。

default:如果沒有 key,返回 default 值

返回值:返回被刪除的值。

dictname =

name= dictname.pop('name')print(name) #輸出:張三

print(dictname.pop('age')) #輸出:13

功能:字典 popitem() 方法隨機返回並刪除字典中的最後一對鍵和值。

語法:dict.popiltem()

引數:無

返回值:返回乙個鍵值對(key,value)形式,按照 lifo(last in first out 後進先出法) 順序規則,即最末尾的鍵值對。

dictname = print(dictname) #輸出:

name =dictname.popitem()print(name) #輸出:張三

print(dictname) #輸出:

python 字典內建方法

字典內建方法 獲取字典中元素的個數 鍵的總數 len函式 d d len d pop key default 根據key刪除字典中的元素,返回對應的value,default可選,如果有default則當key在字典中不存在時,返回特定的值,如果default的則報keyerror d d.pop ...

Python內建字典 dict ,set

dict and set dict 鍵 值 重複新增 set 鍵 key不能重複 對於不變物件來說,呼叫物件自身的任意方法,也不會改變該物件自身的內容。相反,這些方法會建立新的物件並返回,這樣,就保證了不可變物件本身永遠是不可變 python內建了字典 dict的支援,dict全稱dictionar...

python 字典Dict內建方法

方法名字 操作 dict.clear 刪除字典中所有元素 dict.copy 返回字典 淺複製 的乙個副本 dict.fromkeysc seq,val none 建立並返回乙個新字典,以seq 中的元素做該字典的鍵,val 做該字典中所有鍵對應的初始值 如果不提供此值,則預設為none dict....