溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么解析Python中的Dict

發(fā)布時(shí)間:2021-12-16 19:13:43 來源:億速云 閱讀:385 作者:柒染 欄目:開發(fā)技術(shù)


這篇文章將為大家詳細(xì)講解有關(guān)怎么解析Python中的Dict,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

什么是dict?

dict全稱為dictionary(字典),人如其名,像字典一樣可以根據(jù)索引定位到特定的文字。

在python的dict中,我們可以通過key來定位到特定的value。

key vs value 這樣的配對(duì),key3再次套娃嵌套內(nèi)部取出來也是一個(gè)dict。

如此反復(fù),一個(gè)dict可以變得很多層次,但是特征還是key value一一配對(duì),只是value能是普通類型也能是dict。

之前說了list是一連串的數(shù)據(jù),唯一找到元素的方式是通過下標(biāo)逐個(gè)尋覓,從某種角度來看,list算是一個(gè)有下標(biāo)為key的字典了。(當(dāng)然嚴(yán)格來說list和dict是完全不同的兩種數(shù)據(jù)類型)。

說這么多,我們看看字典的代碼示例:

dict1 = dict()
dict1['location'] = 'Guangdong'
dict2 = {'name':'雷學(xué)委', 'langs':['Java', 'Scala', 'NodeJs', 'Python'] }

代碼中的dict1 和 dict2 這兩個(gè)都是字典。

我們下面看看dict的增刪查改

跟list類似,dict內(nèi)的元素說可以修改的(mutable)。

我們可以直接使用類似如下代碼,對(duì)特定鍵的值重新賦值。

dict['key1'] = new_value #對(duì)dict對(duì)象的key1鍵重新賦值。

下面我們直接看代碼,一遍過一下添加/刪除/更改元素以及清空字典的操作。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/11/3 11:34 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學(xué)委
# @XueWeiTag: CodingDemo
# @File : __init__.py.py
# @Project : hello
# 比如學(xué)委的信息作為一個(gè)字典
info_dict = dict()
print('info_dict:', info_dict)
# 添加元素到信息字典
info_dict['name'] = '雷學(xué)委'
print('info_dict:', info_dict)
# 更新為英文名
info_dict['name'] = 'LEI_XUE_WEI'  # 或者改為 'levin'
info_dict['blogs'] = '93'  # 目前發(fā)表了93個(gè)博客文字。
info_dict['gongzhong_hao'] = '【雷學(xué)委】'  # 歡迎過來關(guān)注支持
print('info_dict:', info_dict)
print('gongzhong_hao:', info_dict['gongzhong_hao'])
del info_dict['blogs']  # 刪除元素
print('info_dict:', info_dict)
info_dict.clear()
print('info_dict:', info_dict)  # clear 清空元素后可以打印dict
del info_dict  # 直接刪除整個(gè)信息字典
# print('info_dict:', info_dict) 不能在打印了

效果如下:

怎么解析Python中的Dict

特別指出,為了讓程序不會(huì)中斷,我們拿到一個(gè)陌生的dict通常會(huì)寫類似如下代碼:

#我們也經(jīng)常會(huì)用這種寫法,來獲取某個(gè)key的值,這樣程序不會(huì)被異常中斷
gongzhonghao = info_dict['gongzhong_hao'] if 'gongzhong_hao' in info_dict else 'N/A'
print('gongzhong_hao:', gongzhonghao)

dict使用起來很方便,非常輕松就根據(jù)某個(gè)key定位到值了。

我們開發(fā)中經(jīng)常用到這種結(jié)構(gòu),不管是Python/Java,幾乎所有開發(fā)都會(huì)用到字典類型。

關(guān)于怎么解析Python中的Dict就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI