欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中字典的基本知識(shí)初步介紹

 更新時(shí)間:2015年05月21日 10:57:02   投稿:goldensun  
這篇文章主要介紹了Python中字典的基本知識(shí)初步介紹,是Python入門(mén)中的基礎(chǔ)知識(shí),需要的朋友可以參考下

 字典是可變的,并且可以存儲(chǔ)任意數(shù)量的Python對(duì)象,包括其他容器類(lèi)型另一個(gè)容器類(lèi)型。字典包括鍵對(duì)(稱(chēng)為項(xiàng)目)及其相應(yīng)的值。

Python字典也被稱(chēng)為關(guān)聯(lián)數(shù)組或哈希表。字典的一般語(yǔ)法如下:

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

可以用下面的方式創(chuàng)建字典:

dict1 = { 'abc': 456 };
dict2 = { 'abc': 123, 98.6: 37 };

每個(gè)按鍵都來(lái)自它的值用冒號(hào)(:),該項(xiàng)目以逗號(hào)分隔,整個(gè)事情是包含在大括號(hào)分隔。沒(méi)有任何項(xiàng)目一個(gè)空的字典是寫(xiě)只有兩個(gè)大括號(hào),就像這樣:{}

鍵在一個(gè)字典中是唯一的,而值可能不是。字典的值可以是任何類(lèi)型的,但鍵必須是不可變的數(shù)據(jù)類(lèi)型,例如字符串,數(shù)字,或元組。
訪問(wèn)字典的值:

要訪問(wèn)字典元素,您可以使用熟悉的方括號(hào)一起的關(guān)鍵,獲得它的值。下面是一個(gè)簡(jiǎn)單的例子:

#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];

當(dāng)執(zhí)行上面的代碼中,產(chǎn)生以下結(jié)果:

dict['Name']: Zara
dict['Age']: 7

如果要訪問(wèn)一個(gè)不存在的鍵,這會(huì)得到一個(gè)錯(cuò)誤,如下所示:

#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

print "dict['Alice']: ", dict['Alice'];

當(dāng)執(zhí)行上面的代碼,產(chǎn)生以下結(jié)果:

dict['Zara']:
Traceback (most recent call last):
 File "test.py", line 4, in <module>
  print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'

更新字典:

可以通過(guò)添加一個(gè)新條目或項(xiàng)目(即一個(gè)鍵 - 值對(duì)),修改現(xiàn)有條目或刪除。作為簡(jiǎn)單的例子,如下圖所示在現(xiàn)有條目更新字詞:

#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry


print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];

當(dāng)執(zhí)行上面的代碼,產(chǎn)生以下結(jié)果:

dict['Age']: 8
dict['School']: DPS School

刪除字典元素:

可以刪除單個(gè)字典元素或清除字典中的全部?jī)?nèi)容。也可以刪除整個(gè)字典在一個(gè)單一的操作。

要?jiǎng)h除整個(gè)字典,只要用del語(yǔ)句。下面是一個(gè)簡(jiǎn)單的例子:

#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

del dict['Name']; # remove entry with key 'Name'
dict.clear();   # remove all entries in dict
del dict ;    # delete entire dictionary

print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];

這將產(chǎn)生以下結(jié)果。注意引發(fā)異常,這是因?yàn)榻?jīng)過(guò)del dict刪除,字典已經(jīng)不存在了:

dict['Age']:
Traceback (most recent call last):
 File "test.py", line 8, in <module>
  print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable

注:del()方法會(huì)在后續(xù)的章節(jié)中討論。
字典的鍵的屬性:

字典值沒(méi)有限制。它們可以是任意Python對(duì)象,無(wú)論是標(biāo)準(zhǔn)的對(duì)象或用戶(hù)定義的對(duì)象。但是作為鍵,是不可以這樣的。

要記住字典中的鍵的兩個(gè)要點(diǎn):

(一)不準(zhǔn)一個(gè)鍵對(duì)應(yīng)多個(gè)條目。這意味著不能有重復(fù)的鍵。當(dāng)有重復(fù)的鍵,在分配過(guò)程中以最后分配的為準(zhǔn)。下面是一個(gè)簡(jiǎn)單的例子:

#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'};

print "dict['Name']: ", dict['Name'];

當(dāng)執(zhí)行上面的代碼,產(chǎn)生以下結(jié)果:

dict['Name']: Manni

(二)鍵的值字必須是不可變的。這意味著可以使用字符串,數(shù)字或元組作為字典的鍵,但像['key']是不允許的。下面是一個(gè)簡(jiǎn)單的例子:

#!/usr/bin/python

dict = {['Name']: 'Zara', 'Age': 7};

print "dict['Name']: ", dict['Name'];

當(dāng)執(zhí)行上面的代碼,產(chǎn)生以下結(jié)果:

Traceback (most recent call last):
 File "test.py", line 3, in <module>
  dict = {['Name']: 'Zara', 'Age': 7};
TypeError: list objects are unhashable

相關(guān)文章

  • PyQt5使用mimeData實(shí)現(xiàn)拖拽事件教程示例解析上

    PyQt5使用mimeData實(shí)現(xiàn)拖拽事件教程示例解析上

    這篇文章主要為大家介紹了PyQt中如何使用mimeData實(shí)現(xiàn)拖拽事件的示例解析過(guò)程,有需要的朋友可以借鑒參考下希望能夠有所幫助,祝大家多多進(jìn)步
    2021-10-10
  • 如何使用python?wasmtime調(diào)用rust生成的wasm庫(kù)

    如何使用python?wasmtime調(diào)用rust生成的wasm庫(kù)

    這篇文章主要介紹了如何使用python?wasmtime調(diào)用rust生成的wasm庫(kù),使用python wasmtime來(lái)訪問(wèn)rust庫(kù)的便捷方法,步驟極其簡(jiǎn)練,可以在生產(chǎn)環(huán)境中使用,需要的朋友可以參考下
    2023-01-01
  • Python3實(shí)現(xiàn)打格點(diǎn)算法的GPU加速實(shí)例詳解

    Python3實(shí)現(xiàn)打格點(diǎn)算法的GPU加速實(shí)例詳解

    這篇文章主要給大家介紹了關(guān)于Python3實(shí)現(xiàn)打格點(diǎn)算法的GPU加速的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 淺析Python裝飾器以及裝飾器模式

    淺析Python裝飾器以及裝飾器模式

    本篇文章給大家分享了關(guān)于Python裝飾器以及裝飾器模式的相關(guān)知識(shí)點(diǎn),一起跟著小編學(xué)習(xí)下吧。
    2018-05-05
  • python對(duì)DICOM圖像的讀取方法詳解

    python對(duì)DICOM圖像的讀取方法詳解

    DICOM(Digital Imaging and Communications in Medicine)即醫(yī)學(xué)數(shù)字成像和通信,是醫(yī)學(xué)圖像和相關(guān)信息的國(guó)際標(biāo)準(zhǔn)(ISO 12052)。下面這篇文章主要給大家介紹了關(guān)于python對(duì)DICOM圖像讀取的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-07-07
  • 使用cx_freeze把python打包exe示例

    使用cx_freeze把python打包exe示例

    這篇文章主要介紹了使用cx_freeze把python打包成exe的示例,大家參考使用吧
    2014-01-01
  • python中time、datetime模塊的使用

    python中time、datetime模塊的使用

    這篇文章主要介紹了python中time、datetime模塊的使用,幫助大家更好的利用python處理時(shí)間,感興趣的朋友可以了解下
    2020-12-12
  • 淺談Python xlwings 讀取Excel文件的正確姿勢(shì)

    淺談Python xlwings 讀取Excel文件的正確姿勢(shì)

    這篇文章主要介紹了淺談Python xlwings 讀取Excel文件的正確姿勢(shì),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • 淺談Python模塊導(dǎo)入規(guī)范

    淺談Python模塊導(dǎo)入規(guī)范

    這篇文章主要介紹了淺談Python模塊導(dǎo)入規(guī)范,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • python運(yùn)行時(shí)強(qiáng)制刷新緩沖區(qū)的方法

    python運(yùn)行時(shí)強(qiáng)制刷新緩沖區(qū)的方法

    今天小編就為大家分享一篇python運(yùn)行時(shí)強(qiáng)制刷新緩沖區(qū)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01

最新評(píng)論