無序的python
字典用於存儲大量數據,字典要比列表快,將數據和數據之間進行關聯code
lst=["劉德華","張學友","林俊杰","胡歌"] lst2=["帥","酷","厲害","好"] print(lst[0]+lst[0]) 結果 劉德華 帥
定義一個字典:索引
dic={"宋佳":男,"分數":80,"性格":"愛笑"} 字典中每個逗號分割叫一個元素"宋佳」是一個鍵:男是一個值--鍵值對 dic={"宋佳":"男","分數":80,"性格":"愛笑"} print(dic) 結果 {'宋佳': '男', '分數': 80, '性格': '愛笑'}
字典的鍵:字符串
可哈希的--不可變的數據類型--避免哈希衝突使用了 開放尋址法get
不可哈希的--可變的數據類型it
字典的值能夠任意,字典的鍵要求惟一 若是有重複後面的值將會覆蓋前面的值 字典是可變的類型數據 能夠修改io
暴力添加for循環
2.setdefaultclass
dic={"宋佳":"男","分數":80,"性格":"愛笑"} 1.暴力添加 dic["喜愛"]="唱跳" print(dic) 結果 {"宋佳":"男","分數":80,"性格":"愛笑","喜愛":"唱跳"} ## dic[鍵]=[值] 2.setdefault dic.setdefault("喜愛","唱跳") 鍵 值 這個鍵去字典查詢,若是不存在 就添加 ;存在 就不添加
dic={"宋佳":"男","分數":80,"性格":"愛笑"} del.dic["喜愛"] #刪除鍵 刪除鍵值對 dic={"宋佳":"男","分數":80,"性格":"愛笑"} dic.pop("分數") #刪除鍵 達到刪除鍵值對效果 dic={"宋佳":"男","分數":80,"性格":"愛笑"} dic.clear() #清空列表
dic={"宋佳":"男","分數":80,"性格":"愛笑"} dic["分數"]=60 # 字典中沒有某個鍵值的時候就是添加 當鍵在字典中存在就是修改 有則改 無則加 update: 更新 dic={"宋佳":"男","分數":80,"性格":"愛笑"} dic.update(dic) # uodate括號中的字典級別高於update前面的字典
dic={"宋佳":"男","分數":80,"性格":"愛笑"} for i in dic print(i) # 循環獲取的是字典中每一個鍵值對的鍵 get print(dic.get("宋佳")) # 經過鍵獲取值 ,若是不存在字典中返回None 不存在就會報錯 存在就是顯示
dic={"宋佳":"男","分數":80,"性格":"愛笑"} print(dic.keys()) #高仿列表--dict keys(['宋佳'分數','性格']) 獲取的是鍵 print(dic.values()) 獲取的是鍵 for i in dic: print(i) #獲取的是鍵 print(i,dic.get(i))# 獲取全部鍵和值 ## 高仿列表支持for循環 不支持索引 : for i in dic.keys(): print(i) print(i,dic.get(i)) print(del.keys()[0]) #vluse獲取字典全部的值 keys獲取全部鍵 items獲取的是鍵和值 print(dic.items())
```python
a,b=10,20
a,b=b,a
print(a,b)
結果
a=20
b=10
a,_,b=(3,4,5)
print(a,b)
a=3
b=5 #等號後面的值和前面的變量名要一一對應
a=10,12 #本質就是一個元組
print(a)
(10,12)變量
a,b={1:"a",2:"b"}
print(a,b)
1 2
a,b="23"
print(a,b)
2 3
keys--獲取字典中全部的鍵 存放在一個高仿列表中
values--獲取字典中全部的值 存放在一個高仿列表中
items --獲取字典中全部的鍵和值 存放在一個高仿列表裏的元祖
for k,v in dic.items():
print(k,v)
```不可變數據類型/可變數據類型 數據類型 可變/不可變 整型 不可變 字符串 不可變 元組 不可變 列表 可變 集合 可變 字典 可變