# 1、基本使用
# 1、用途:按照鍵值對(duì)的形式存放多個(gè)任意類(lèi)型的value,key反映的value的屬性
# 2、定義方式, 在{}內(nèi)用逗號(hào)分隔開(kāi)多個(gè)key:value, 其中value可以是任意類(lèi)型
#? ? ? ? ? ? ? 而key必須是不可變類(lèi)型,通常是字符串類(lèi)型
d = {1:"aaa", 3.1:'bbbb', [1, 2]:"ccc"}
d = {1:"aaa", 3.1:'bbbb', ():"ccc"}# d=dict(...)
print(type(d))
print(d[()])
# 類(lèi)型轉(zhuǎn)換
l = [("name", "egon"), ("age", 18), ["gender", "male"]]
res =dict(l)
print(res)
d =dict(x=1, y=2, z=3)
print(d)
# 空字典
d={}
print(type(d))
dic={}.fromkeys(["name",'age',"gender"],None)
dic={}.fromkeys("hello",None)
print(dic)
# 3、常用操作+內(nèi)置的方法
# ==========>優(yōu)先掌握的操作:
# 1、按key存取值:可存可取
d={'k1':111}
print(d['k1'])
d['k2']=222
print(d)
# 2、長(zhǎng)度len
d={'k1':111,'k2':222}
print(len(d))
# 3、成員運(yùn)算in和not in
d={'k1':111,'k2':222}
print('k1' in d)
print(111 in d)
# 4、刪除
d = {'k1':111, 'k2':222}
# 6.1 萬(wàn)能刪除,沒(méi)有返回值,代表的是單純的刪除
del d['k1']
print(d)
# 6.2 隨機(jī)刪,返回一個(gè)元組
res=d.popitem()
print(d)
print(res)
# 6.3 指定key刪除,有返回值,代表的是取走操作
res=d.pop('k1')
print(d)
print(res)
# 5、鍵keys(),值values(),鍵值對(duì)items()
"""
>>> d={'k1':111,'k2':222}
>>> d.keys()
['k2', 'k1']
>>> d.values()
[222, 111]
>>> d.items()
[('k2', 222), ('k1', 111)]
"""
# 6、循環(huán)
d={'k1':111,'k2':222}
for kin d:
print(k)
for vin d.values():
print(v)
for k,vin d.items():
print(k,v)
keys=[]
for kin d:
keys.append(k)
keys =list(d.keys())
print(keys)
# ==========================該類(lèi)型總結(jié)===========================
# 存一個(gè)值or存多個(gè)值
# 有序or無(wú)序
# 可變or不可變(1、可變:值變,id不變??勺?=不可hash 2、不可變:值變,id就變。不可變==可hash)