1. 程式人生 > >python3 字典操作

python3 字典操作

python3 字典

字典: 創建方式: 1、正常創建 a = {‘name‘: ‘azj‘, ‘age‘: 23, ‘mail‘: ‘[email protected]‘} 2、通過工廠函數dict創建 a = dict(([‘name‘, ‘azj‘], [‘age‘, 23], [‘email‘, ‘[email protected]‘])) 3、 a = {}.fromkeys((‘azj‘, ‘tom‘, ‘lili‘), 11) {‘azj‘: 11, ‘tom‘: 11, ‘lili‘: 11} >>> a = {‘name‘: ‘azj‘, ‘age‘: 23} >>> a {‘name‘: ‘azj‘, ‘age‘: 23} >>> ‘%(name)s:%(age)s‘ % a ‘azj:23‘

修改:
adict = {‘name‘: ‘azj‘, ‘age‘: 26}

>> adict
{‘name‘: ‘azj‘, ‘age‘: 26}
>> adict[‘age‘] = 22
>> adict
{‘name‘: ‘azj‘, ‘age‘: 22}
>> adict[‘phone‘] = ‘15901037927‘ #字典裏有這個字段修改,沒有則添加該字段
>> adict
{‘name‘: ‘azj‘, ‘age‘: 22, ‘phone‘: ‘15901037927‘}

刪除:
adict
{‘name‘: ‘azj‘, ‘age‘: 22, ‘phone‘: ‘15901037927‘}

>> adict.pop(‘name‘) #pop默認彈出並刪除最後一項,在字典裏應為字典是無序的所以需要指定彈出的字段信息
‘azj‘
>> adict
{‘age‘: 22, ‘phone‘: ‘15901037927‘}
adict.popitem() ###隨機刪除並彈出一項內容
(‘phone‘, ‘15901037927‘)
>> adict
{‘age‘: 22}
>> adict.clear() #清空列表
>> adict
{}
>> del adict #刪除列表

>> adict

len(字典)    #統計字典內的元素數目
>>> len(adict)
2

字典的復制:

>> a = {‘name‘: ‘azj‘, ‘age‘: 23}
>> a
{‘name‘: ‘azj‘, ‘age‘: 23}
>> b = a #內容賦值,指向相同的內存空間
>> b
{‘name‘: ‘azj‘, ‘age‘: 23}
>> a
{‘name‘: ‘azj‘, ‘age‘: 23}
>> id(a)
140165656248536
>> id(b)
140165656248536
>> c = a.copy()
>> c
{‘name‘: ‘azj‘, ‘age‘: 23}
>> id(c)
140165656248752

XXX.get(‘key‘,[]) #列出字典的value,如果沒有該key則默認返回none,自定義返回信息[]

>> dict
{‘name‘: ‘azj‘, ‘age‘: 26}
>> dict.pop(‘age‘)
26
>> dict
{‘name‘: ‘azj‘}
>> dict.get(‘name‘)
‘azj‘
>> dict.get(‘age‘)
>> dict.get(‘age‘, ‘not found‘)
‘not found‘

XXX.setdefault() #當字典裏面沒有該值的情況下進行添加,有的話則無法添加

>> dict
{‘name‘: ‘azj‘}
>> dict.setdefault(‘age‘, 26)
26
>> dict
{‘name‘: ‘azj‘, ‘age‘: 26}
>> dict.setdefault(‘age‘, 25)
26
>> dict
{‘name‘: ‘azj‘, ‘age‘: 26}

>> dict.keys() #列出當前字典所有的key
dict_keys([‘name‘, ‘age‘])
>> dict.values() #列出當前字典的所有value
dict_values([‘azj‘, 26])

>> dict.items() #列出當前字典的key和value
dict_items([(‘name‘, ‘azj‘), (‘age‘, 26)])

##key,value翻轉

>> {value:key for key, value in dict.items()}
{‘azj‘: ‘name‘, 26: ‘age‘}
#互換的時候註意,value相同會產生元素丟失的現象
>> a = {}.fromkeys((‘tom‘, ‘bob‘, ‘lili‘), 18)
>> a
{‘tom‘: 18, ‘bob‘: 18, ‘lili‘: 18}
>> {val: key for key, val in a.items()}
{18: ‘lili‘}

字典的拼接:

>> a = {‘name‘: ‘azj‘}
>> a
{‘name‘: ‘azj‘}
>> b = {‘age‘: 26}
>> a.update(b)
>> a
{‘name‘: ‘azj‘, ‘age‘: 26}

python3 字典操作