一、什麼是Dictionary
Dictionary(字典)是Python中的一種數據類型,它是一個無序的鍵(key):值(value)對集合,用於存儲和檢索數據。與列表和元組不同,字典中的元素沒有特定的順序,而是通過鍵來訪問和操作其中的值。在Python中,可以使用花括號 {} 或者 dict() 函數來創建一個字典。
# 創建一個字典 scores = {'小明': 90, '小紅': 85, '小華': 95} # 或者 scores = dict(小明=90, 小紅=85, 小華=95)
其中,鍵值對用冒號隔開,每個鍵值對之間用逗號隔開。
二、字典的基本操作
1、訪問字典元素
訪問字典元素的方式是通過鍵(key)來訪問相應的值(value),可以使用方括號[]或者get方法。如果訪問不存在的鍵,使用方括號訪問會報錯,而使用get方法則會返回None或者自定義的默認值。
# 訪問字典元素 print(scores['小明']) # 90 print(scores.get('小明')) # 90 print(scores.get('小李')) # None print(scores.get('小李', 60)) # 60
2、修改字典元素
修改字典元素也是通過鍵來實現。直接使用鍵賦值的方式可以修改已有的鍵值對,如果該鍵不存在,則會新增一個鍵值對。
# 修改字典元素 scores['小明'] = 95 # {'小明': 95, '小紅': 85, '小華': 95} scores['小李'] = 80 # {'小明': 95, '小紅': 85, '小華': 95, '小李': 80}
3、刪除字典元素
刪除字典元素可以使用del語句,也可以使用pop方法。del語句會直接從字典中刪除相應的鍵值對,如果該鍵不存在則會報錯;而使用pop方法則可以指定要刪除的鍵,如果鍵不存在則會返回默認值。
# 刪除字典元素 del scores['小紅'] # {'小明': 95, '小華': 95, '小李': 80} scores.pop('小明') # {'小華': 95, '小李': 80} scores.pop('小明', 90) # {'小華': 95, '小李': 80}
三、字典的高級操作
1、遍歷字典
遍歷字典就是遍歷它的鍵值對。可以使用for循環進行遍歷,通過items方法可以同時獲取鍵和值。也可以使用for循環遍歷鍵和值。
# 遍歷字典 for key, value in scores.items(): print(key, value) for key in scores.keys(): print(key, scores[key]) for value in scores.values(): print(value)
2、字典的複製
字典的複製可以使用copy方法,該方法會返回一個新的字典。如果使用賦值操作,則是將原字典的引用賦給了新的變量,對其中任意一個變量的修改都會影響到另一個變量。
# 字典的複製 new_scores = scores.copy() new_scores['小明'] = 90 print(scores, new_scores) # {'小華': 95, '小李': 80} {'小華': 95, '小李': 80, '小明': 90}
3、字典的合併
字典的合併可以使用update方法,該方法可以將另一個字典中的鍵值對合併到當前字典中。
# 字典的合併 temp_scores = {'小芳': 88, '小剛': 92} scores.update(temp_scores) # {'小華': 95, '小李': 80, '小芳': 88, '小剛': 92}
四、應用示例
字典在實際應用中非常常見,下面以一個簡單示例來展示如何使用字典進行數據的存儲和檢索。
# 存儲學生信息 students = {} while True: name = input('請輸入學生姓名:') if not name: break score = input('請輸入學生分數:') students[name] = score # 檢索學生信息 search = input('請輸入要查找學生的姓名:') print(students.get(search, '查無此人'))
通過以上代碼示例,可以輸入學生的姓名和分數,程序會自動將其存儲到students字典中。當需要檢索某個學生的信息時,只需要輸入其姓名即可查找到相應的分數。如果該學生不存在,則會輸出「查無此人」。
五、總結
Dictionary是Python中非常有用的一種數據類型,在進行數據的存儲和檢索時非常方便。除了上述的常見應用場景之外,在實際開發中可能還會有更多複雜的應用,需要根據具體情況進行處理。通過本文的介紹,相信讀者已經對Python中利用Dictionary實現數據存儲和檢索有了更加深入的了解。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/194156.html