一、字典的定義和基本操作
字典是Python中非常重要的數據結構之一,它以鍵-值的形式存儲數據,可以快速地通過鍵檢索到與之對應的值。字典的定義方式為:使用花括號{},將鍵-值對用冒號:連接起來,多個鍵-值對之間用逗號,隔開,示例代碼如下:
dict1={'name':'Tom','age':18,'gender':'Male'}
其中,'name', 'age', 'gender'為鍵,'Tom', 18, 'Male'為相應的值。
字典的基本操作包括:訪問、添加、修改、刪除鍵值對。其中,訪問鍵值對的方式為使用方括號[],將對應的鍵作為下標索引,示例代碼如下:
print(dict1['name'])#輸出'Tom'
添加鍵值對的方式為直接在字典中使用新的鍵-值對,示例代碼如下:
dict1['height']=175 print(dict1)#輸出{'name':'Tom','age':18,'gender':'Male','height':175}
修改鍵值對的方式為使用已有的鍵,直接賦值新的值,示例代碼如下:
dict1['name']='Mike' print(dict1)#輸出{'name':'Mike','age':18,'gender':'Male','height':175}
刪除鍵值對的方式為使用del關鍵字,將對應的鍵從字典中刪除,示例代碼如下:
deldict1['gender'] print(dict1)#輸出{'name':'Mike','age':18,'height':175}
二、字典的常用方法
字典除了基本操作外,還有很多常用的方法,下面介紹幾個常用的方法:
1. keys()和values()
分別返回字典中所有鍵和所有值組成的可迭代對象,可以通過for循環進行遍歷,示例代碼如下:
dict2={'name':'Alice','age':20,'gender':'Female'} print(dict2.keys())#輸出dict_keys(['name','age','gender']) print(dict2.values())#輸出dict_values(['Alice',20,'Female']) forkeyindict2.keys(): print(key+':'+str(dict2[key]))
2. items()
返回字典中所有鍵值對組成的可迭代對象,可以通過for循環進行遍歷,示例代碼如下:
print(dict2.items())#輸出dict_items([('name','Alice'),('age',20),('gender','Female')]) forkey,valueindict2.items(): print(key+':'+str(value))
3. get()
返回字典中指定鍵對應的值,如果鍵不存在,則返回默認值(默認為None),示例代碼如下:
print(dict2.get('name'))#輸出'Alice' print(dict2.get('height',0))#輸出0,因為'height'鍵不存在
三、字典的高級用法
1. defaultdict()
defaultdict是Python中collections模塊中的一個類,它可以創建一個默認字典,即當訪問一個不存在的鍵時,會自動以指定的類型創建一個值為默認值的鍵值對。下面的例子中,我們使用defaultdict創建一個默認值為0的字典,統計一段文本中每個單詞出現的次數:
importcollections text='Thequickbrownfoxjumpsoverthelazydog' words=text.split() counter=collections.defaultdict(int) forwordinwords: counter[word]+=1 print(counter)
輸出為:defaultdict(, {'The': 1, 'quick': 1, 'brown': 1, 'fox': 1, 'jumps': 1, 'over': 1, 'the': 1, 'lazy': 1, 'dog': 1})。
2. OrderedDict()
OrderedDict也是Python中collections模塊中的一個類,它可以創建一個有序字典,即字典中的鍵值對按照添加的順序進行排序。下面的例子中,我們使用OrderedDict創建一個有序字典,並按照添加的順序輸出鍵值對:
importcollections dict3=collections.OrderedDict() dict3['a']=1 dict3['b']=2 dict3['c']=3 forkey,valueindict3.items(): print(key+':'+str(value))
輸出為:'a: 1','b: 2','c: 3'。
3. 字典解析
字典解析是一種快速創建字典的方法,類似於列表解析。示例如下:
list1=[('name','Alice'),('age',20),('gender','Female')] dict4={key:valueforkey,valueinlist1} print(dict4)#輸出{'name':'Alice','age':20,'gender':'Female'}
四、總結
本文主要介紹了Python字典常用的基本操作和常用方法,以及字典的高級用法,希望能夠對大家在數據操作方面有所幫助。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/241978.html