字典增刪改查

一:字典的知識:python

字典:python中很是重要的數據類型,在python中惟一一個映射的數據類型
數據類型分類
按照數據可變與不可變:
 # 不可變數據類型: int str bool tuple  可哈西
 # 可變數據類型: list,dict,set         不可哈西

1  鍵值對
#字典的   key:value# key 是惟一的 且是不可變數據類型  int,str bool tuple

#value:任意數據類型

二:字典增app

1 按照key值增長 有就覆蓋,沒有就增長spa

字典增長

dic={'name':'jin','age':16,'sex':'male'}
dic['name']='sese'
print(dic)
# 有就覆蓋
dic['hobby']='kaiche'
print(dic)
# 沒有就添加

打印結果:get

2 setdefault (添加沒有key值,不設置value顯示none,設置了正常顯示。 添加有的key值,會被覆蓋(至關於沒有改變以前的顯示))it

 

1  按照key和value增長,添加沒有key值,valu沒有設置,顯示nonedate

dic={'name':'jin','age':16,'sex':'male'}
dic.setdefault('lang')
print(dic)

打印結果循環

2  設置沒有key值,並設置value,所有顯示數據類型

dic={'name':'jin','age':16,'sex':'male'}
dic.setdefault('hobbie','kaichuan')
print(dic)

顯示結果im

3 設置key和value,有key,value被覆蓋數據

dic={'name':'jin','age':16,'sex':'male'}
dic.setdefault('name','zhu')
print(dic)

打印結果

 

三:字典刪除

1 pop 按照key值刪除,有返回值,若是沒有key,能夠設置返回值。

有key值例子,打印返回值。

dic={'name':'jin','age':16,'sex':'male'}
ret=dic.pop('name')
print(dic)
print(ret)

顯示結果:

沒有key值  設置返回值

dic={'name':'jin','age':16,'sex':'male'}
ret=dic.pop('name1','沒有此鍵')
print(ret)

打印結果

2 隨機刪除 popitem  (3.5版本之前能夠(字典是無序的),3.6版本後字典是有序的,默認刪除最後一個。

dic={'name':'jin','age':16,'sex':'male'}
dic.popitem()
print(dic)

打印結果

3 clear(li.clear())  清空字典

dic={'name':'jin','age':16,'sex':'male'}
dic.clear()
print(dic)

打印結果

空字典

4 del 刪除字典(雖然顯示錯誤,可是就這麼用)

打印結果:

 

四:字典修改

1 直接修改

dic={'name':'jin','age':16,'sex':'male'}
dic['name']='zhu'
print(dic)

打印結果

2 update

將dic1的鍵和值覆蓋添加到dic2中,dic1不變

dic1={'name':'jin','age':16,'sex':'male'}
dic2={'name':'zhujun','weight':60}
dic2.update(dic1)
print(dic1)
print(dic2)

打印結果

 

五:字典的查

第一種:直接查(按照key)

第二種:get,當沒有key時候,若是沒有設置返回值,顯示none.

              設置返回值顯示返回值內容

dic={'name':'jin','age':16,'sex':'male'}
print(dic['name'])
print(dic.get('name'))
print(dic.get('haha'))
print(dic.get('haha','孩子長點心,找不到'))

打印結果:

 

 

a,b直接賦值,只要後面有兩個元素, int list dict tuple等類型都行

a,b能同時賦值,只要後面有兩個元素,  int list dict tuple等類型都行

a = 1      #一行代碼實現a,b值互換
b = 3
a,b = b,a
print(a,b)
a,b = ['alex','wusir']
print(a,b)
a,b = ('alex','wusir')
print(a,b)

打印結果:

六:取出字典鍵和值,

1:取key

第一種循環整個字典

dic1={'name':'jin','age':16,'sex':'male'}
for k in dic1:
    print(k)

打印結果

第二種:

dic1={'name':'jin','age':16,'sex':'male'}
for k in dic1.keys():
    print(k)

打印結果

2:取value

dic1={'name':'jin','age':16,'sex':'male'}
for v in dic1.values():
    print(v)

打印結果:

3:取key和value

dic1={'name':'jin','age':16,'sex':'male'}
for k,v in dic1.items():
    print(k,v)

打印結果:

 

七:字典的嵌套  聯繫題

dic = {
    'name':'金鑫',
    'name_list':[1,2,3,'李傑'],
    1:{
        'python10':['小黑','萌哥'],
       '老男孩':{'name':'oldboy','age':56}
    }

問題:

1,[1,2,3,'李傑']追加'wusir'
dic['name_list']=[1,2,3,'李傑','wusir']
print(dic)
dic['name_list'].append('wusir')
print(dic)

2, ['小黑','萌哥'] 小黑 萌哥中間 插入一個花哥
dic[1]['python10'].insert(1,'花哥')
print(dic)

3, {'name':'oldboy','age':56} 添加一個鍵值對,hobby:男人
dic[1]['老男孩']['hobbie']='sese'
print(dic)

打印結果:

相關文章
相關標籤/搜索