python基礎知識-字典

簡介

Python字典用來存儲多個不同類型的數據,字典裏面的數據以鍵值對的形式出現,字典數據和數據順序沒有關係,即可說明字典不支持下標,後期無論數據如何變化,只需要按照對應的鍵的名字查找數據

創建

形式:1.大括號         2.必須要有鍵值對         3.逗號隔開

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

其中’name’  :  'jjb’爲其中一個鍵值對
空字典:

dict2={};
dict3=dict();

字典常用操作

增(改)

常用格式:字典序列[key]=值
注意:如果key存在則修改key對應的值,不存在則在後面添加

dict1={'name':'jjb','age':20,'gender':'男'}
dict1['age']=18 #修改年齡
print(dict1)
dict1['feature']='帥' #添加特徵
print(dict1)
#輸出結果
#{'name': 'jjb', 'age': 18, 'gender': '男'}
#{'name': 'jjb', 'age': 18, 'gender': '男', 'feature': '帥'}

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

dict1.clear()   # 清空字典
print(dict1)

del dict1      # 刪除字典,刪除後該字典不存在

# 輸出結果:
# {'name': 'jjb', 'gender': '男'}
# {}

  • 利用key值
  • get():用法:字典序列.get(key,默認值),如果當前查找key不存在,則返回第二個參數(默認值),如果省略第二個參數,則返回None
  • keys:用法:字典序列.keys(),返回key列表(一個可迭代對象),可用於for循環遍歷
  • values:用法:字典序列.values(),返回值列表(一個可迭代對象),可用for循環遍歷
  • items:用法:字典序列.items(),返回列表元素爲元組(一個可迭代對象),可用for循環遍歷
dict1={'name':'jjb','age':20,'gender':'男'}
print(dict1['name']) #查找name值
# 輸出結果:jjb

dict1={'name':'jjb','age':20,'gender':'男'}
print(dict1.get('age'))
print(dict1.get('feature','帥'))
#輸出結果:
#20
#帥

print(dict1.keys()) #返回key值
# 輸出結果:dict_keys(['name', 'age', 'gender'])

print(dict1.values()) #返回值列表
#輸出結果:dict_values(['jjb', 20, '男'])

print(dict1.items())  #返回列表元素爲元組
#輸出結果:dict_items([('name', 'jjb'), ('age', 20), ('gender', '男')])


# 舉一個for循環遍歷的例子
for item in dict1.items():
    print(item)
#輸出結果:
# ('name', 'jjb')
# ('age', 20)
# ('gender', '男')

其餘性質

  • 不允許同一個鍵出現兩次。創建時如果同一個鍵被賦值兩次,後一個值會被記住
  • 鍵必須不可變,所以可以用數字,字符串或元組充當,不能用列表
dict1={'name':'jjb','age':20,'gender':'男','age':18}
print(dict1)
# 輸出結果:
# {'name': 'jjb', 'age': 18, 'gender': '男'}

dict2={['name']:'jjb','age':18}
# 報錯:
# TypeError: unhashable type: 'list'
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章