1. 程式人生 > 實用技巧 >SpringBoot2 整合日誌,複雜業務下的自定義實現

SpringBoot2 整合日誌,複雜業務下的自定義實現

字典

一、字典的應用場景

思考:如果有多個數據,例如:Tom,男,20,如何快速儲存?

答:列表

list=['Tom','男',20]

思考2:如何查詢到資料'Tom'?

答:查詢到下標為0的資料即可

list[0]

思考3:如果將來順序發生變化,如下所示,還能用list1[0] 訪問到資料Tom嗎?

list1=['男',20,'Tom']

答:不能,資料Tom此時下標為2

思考4:資料順序發生變化,每個資料的下表也會隨之變化,如何保證資料順序變化前後能使用同一的標準查詢資料呢?

答:字典,字典裡面的資料是以鍵值對形式出現,字典資料和資料順序沒有關係,即字典不支援下標,後期無論資料如何變化,只要按照對應的鍵的名字查詢資料即可

二、建立字典的語法

字典特點:

  • 符號為大括號
  • 資料為鍵值對形式出現
  • 各個鍵值對之間用逗號隔開
#有資料字典
dict1={'naem':'Tom','age':20,'gender':'男'}

# 空字典
dict2={}

dict3=dict()

注意:一般冒號前面的的為鍵(key), 簡稱k;冒號後面的為值(value),簡稱V

三、字典常見操作

3.1 增

寫法:字典序列[key]=值

注意:如果key存在則修改這個key對應的值;如果key不存在則新增此鍵值對

dict1={'name':'Tom','age':20,'gender':'男'}

dict1['name']='Rose'
print(dict1)
# {'name': 'Rose', 'age': 20, 'gender': '男'}

dict1['id']=110
print(dict1)
# {'name': 'Rose', 'age': 20, 'gender': '男', 'id': 110}

注意:字典為可變型別

3.2 刪

  • del()/del: 刪除字典或刪除字典中指定的鍵值對
dict1={'name':'Tom','age':20,'gender':'男'}
del dict1['gender']
print(dict1)
# 結果:{'name': 'Tom', 'age': 20}
  • clear(): 清空字典
dict1={'name':'Tom','age':20,'gender':'男'}
# del dict1['gender']
# print(dict1)
# 結果:{'name': 'Tom', 'age': 20}

# clear()
dict1.clear()
print(dict1)
# 結果:{}

3.3 改

寫法:字典序列[key]=值

注意:如果key存在則修改這個key對應的值;如果key不存在則新增此鍵值對

3.4 查

3.4.1 key值查詢

dict1={'name':'Tom','age':20,'gender':'男'}
print(dict1.get('name'))    #Tom
print(dict1['id'])  #報錯

如果當前查詢的key存在,則返回對應的值;否則報錯

3.4.2 get()

  • 語法:
字典序列.get(key,預設值)

注意:如果當前查詢的key不存在則返回第二個引數(預設值),如果省略第二個引數,則返回None

  • 示例:
dict1={'name':'Tom','age':20,'gender':'男'} 
print(dict1.get('name'))    #Tom      
print(dict1.get('id',110))      #110  
print(dict1.get('id'))       #None    

3.4.3 keys()

dict1={'name':'Tom','age':20,'gender':'男'}
print(dict1.keys())    
#dict_keys(['name', 'age', 'gender'])

3.4.4 values()

dict1={'name':'Tom','age':20,'gender':'男'}
print(dict1.values())
#dict_values(['Tom', 20, '男'])

3.4.5 items()

dict1={'name':'Tom','age':20,'gender':'男'}
print(dict1.items())
#dict_items([('name', 'Tom'), ('age', 20), ('gender', '男')])

四、字典的迴圈遍歷

4.1 遍歷字典的key

# 遍歷字典的key
dict1={'name':'Tom','age':20,'gender':'男'}
for key in dict1.keys():
    print(key)

4.2 遍歷字典的value()

# 遍歷字典的value
dict1={'name':'Tom','age':20,'gender':'男'}
for value in dict1.values():
    print(value)

4.3 遍歷字典的元素

# 遍歷字典的元素
dict1={'name':'Tom','age':20,'gender':'男'}
for item in dict1.items():
    print(item)

4.4 遍歷字典的鍵值對

# 遍歷字典的鍵值對
dict1={'name':'Tom','age':20,'gender':'男'}
for key,value in dict1.items():
    print(f'{key}={value}')