Pythonベース:辞書:キー値の表現/アクセス/出力/メソッド/2 D辞書操作

4989 ワード

1,辞書の表現方式:{},dict()で表現する
a={'name':'  ','age':'18','address':'  '}
c = {} #      

辞書表現2
a=dict(name='  ',age='18',address='  ')
print(a)   #{'name': '  ', 'age': '18', 'address': '  '}
d = dict() #      

2,出力キー値(a)key a.keys()a.values()a.items(
a=dict(name='  ',age='18',address='  ')
print(a.keys())
for key in a.keys(): 
    print(key,a[key]) #     

出力:dict_keys([‘name’,‘age’,‘address’])name張三age 18 address湖北
(b)valueは辞書のすべての値を返す
a = dict(name='  ', age='18', address='  ')
print(a.values())  #dict_values(['  ', '18', '  '])
for v in a.values():
    print(v)

出力:dict_values([‘張三’,‘18’,‘湖北’])張三18湖北(c)item項
a = dict(name='  ', age='18', address='  ')
print(a.items())   #dict_items([('name', '  '), ('age', '18'), ('address', '  ')])
for k,v in a.items():
    print(k,v)

出力:dict_items([(‘name’,‘張三’),(‘age’,‘18’),(‘address’,‘湖北’)])name張三age 18 address湖北
3,アクセス(1)コマンド:辞書名[キー]で「値」を取得します.キーが存在しない場合、例外(2)getアクセスを投げ出す
a=dict(name='  ',age='18',address='  ')
print(a.get('age'))
print(a.get('sex',' ')) #    
print(a.get('name','123')) #      

出力:18男張
4,len()キー値ペアの個数
5、辞書要素の追加、修正、削除
  • 辞書に「キー値ペア」を追加します.「キー」が既に存在する場合、古いキー値ペアが上書きされます.「キー」が存在しない場合2)辞書の要素の削除にはdelメソッドを使用します.またはclear()はすべてのキー値ペアを削除します.pop()指定したキー値ペアを削除し、対応する「値オブジェクト」を返します.
  • delはdel a[’‘key’]を用いる.
    a = dict(name='  ', age='18', address='  ')
    del a['name']
    print(a)    #{'age': '18', 'address': '  '}
    

    clear全部クリアa.clear()
    a = dict(name='  ', age='18', address='  ')
    a.clear()
    print(a)  #{}
    

    pop a.pop('key’)#popを使用して、指定したキーに対応する値を削除し、対応する「値オブジェクト」を返します.
    a = dict(name='  ', age=18, address='  ' ,sex='man' )
    a.pop('name')
    print(a)   # {'age': 18, 'address': '  '}
    print(a.pop('address'))  #   :  
    print(a.pop('sex'))   #  man
    print(a)   #{'age': 18}
    

    #popitem#辞書のキーと値のペアをランダムに返して削除します(一般的に末尾ペアを削除します)
    a = dict(name='  ', age='18', address='  ')
    print(a.popitem())  #('address', '  ')
    

    6、解包
    s = {'name':'  ','age':18, 'sex':' '}
    name,age,job=s #        
    print(name)  # name
    

    7,2 D辞書操作
    a={
        '001':{'name':' 1','age':'18','address':'  '},
        '002':{'name':' 2','age':'19','address':'  '},
        '003':{'name':' 3','age':'20','address':'  '}
    }
    for k in a.keys():
        print(k,end=' ')
        for k1 in a[k].keys():
            print(k1,a[k][k1],end=' ')   #end=''   
        print()  #    
    

    出力:(‘address’,‘湖北’)001 name張1 age 18 address北京002 name張2 age 19 address湖北003 name張3 age 20 address北京
    a={
        '001':{'name':' 1','age':'18','address':'  '},
        '002':{'name':' 2','age':'19','address':'  '},
        '003':{'name':' 3','age':'20','address':'  '}
    }
    for k,v in a.items():
        print(k,end=' ')
        for k1,v1 in v.items():
            print(k1,v1,end=' ')
        print()
    

    出力:(‘address’,‘湖北’)001 name張1 age 18 address北京002 name張2 age 19 address湖北003 name張3 age 20 address北京
    a={
        '001':{'name':' 1','age':'18','address':'  '},
        '002':{'name':' 2','age':'19','address':'  '},
        '003':{'name':' 3','age':'20','address':'  '}
    }
    for k,v in a.items():
        if v['address']=='  ':
            v['  ']='10000'
            print(v)
    

    出力:(‘address’,‘湖北’){‘name’:‘張1’,‘age’:‘18’,‘address’:‘北京’,‘房補’:‘10000’}{‘name’:‘張3’,‘age’:‘20’,‘address’:‘北京’,‘房補’:‘10000’}
    for k in a.keys():
        if a[k]['address']=='  ':
            a[k]['  ']=10000
    print(a
    

    )出力(‘address’,‘湖北’){‘001’:{‘name’:‘張1’,‘age’:‘18’,‘address’:‘北京’,‘房補’:10000},‘002’:{‘name’:‘張2’,‘age’:‘19’,‘address’:‘湖北’},‘003’:{‘name’:‘張3’,‘age’:‘20’,‘address’:‘北京’,‘房補’:10000}}