字典內建方法(含筆試題!)
阿新 • • 發佈:2021-11-09
字典內建方法
需要掌握!!
定義:大括號括起來,內部存放多個元素,元素與元素之間逗號隔開,元素的組織形式是:key:value鍵值對,其中key是對value的描述性性質的資訊,一般是字串,key必須是不可變型別,key不能重複,value是真正的資料,相當於變數值,可以是任意資料型別。
# 型別轉換
info = dict(name='tony', pwd=123, age=28)
info1 = {}
info2 = dict([['name', 'tony'], ('age', 18)])
print(info, info1, info2)
dic = {'name': 'jack', 'age': 18, 'hobbies':['game', 'music']} # 1.按key取值 # print(dic['name']) # print(dic['pwd']) # 這時由於key不存在會報錯 # 2.按key修改值(key存在修改,不存在則新增,使用頻率很高高高高高高高高!!!!!!) dic['name'] = 'jjjj' dic['pwd'] = 123 # 新增新的鍵值對 # 3.統計字典內部 鍵值對 的個數 print(len(dic)) # 4.成員運算(預設只暴露key) print(18 in dic) # False print('name' in dic) # True # 5.刪除元素 # 方式一: # del dic['name'] # 方式二:字典的pop()括號中必須放內容,不能空著,可以將key所對應的鍵值對彈出,給出value, # dic.pop('age') # print(dic.pop('age')) # 18 # 方式三:彈出鍵值對,組織成元組的形式,第一個元素是key,第二個元素是value,用的很少。 # dic.popitem() ('hobbies', ['game', 'music']) # 6.獲取value值 print(dic['name']) # 鍵不存在則報錯,不推薦用該方式取值。 print(dic.get('name')) # 鍵不存在預設返回None。 print(dic.get('pwd', '嘎嘎嘎')) # 第二個引數是可以在key不存在時自定義返回的資訊。 # 7.keys() values() items(),獲取到的結果看成是列表,在python2中是列表,python3中是迭代器,items結果列表套元組,每個元組裡面有兩個值:key和value.
需要了解的!
dic = {'name': 'jack', 'age': 18, 'hobbies':['game', 'music']} # 1.update()更新字典,存在則修改,不存在則建立 # dic.update({'name':'jasonLJ','pwd':123}) # 2.fromkeys()初始化字典,快速生成新字典 # dict.fromkeys(['k1','k2','k3'], []) # 結果是{'k1': [], 'k2': [], 'k3': []} # fromkeys 筆試題!!!!!!!!!!!!! res = dict.fromkeys(['k1','k2','k3'], []) res['k1'].append(111) # 結果三個key的value全是 111,為什麼呢? # 原因在於三個key指向同一個列表,所以一個新增值了,三個全部新增相同的值。 res['k1'] = 111 # 這樣就不會出現值全部相同的情況了。 # 3.setdefault()當鍵存在的情況下不修改,而是獲取該鍵對應的值。 print(dic.setdefault('name', 'jasonLJ')) # jack # 當鍵不存在的情況下,新增一組鍵值對,並且該方法的結果是新增的值。 print(dic.setdefault('pwd',123)) # 123
字典內容就到這裡了。。。