官术网_书友最值得收藏!

2.5.1 字典及其創建

字典(dict)由鍵和對應值成對組成,也被稱作關聯數組或散列表。字典類型是Python中唯一的映射類型。“映射”是數學中的術語,簡單理解,它指的是元素之間相互對應的關系,即通過一個元素,可以唯一找到另一個元素,如圖2-4所示。

圖2-4 字典的映射關系

字典是一種通過名字引用值的數據結構,字典中的值并沒有特殊的順序,但是都存儲在一個特定的鍵(Key)里,鍵可以是數字、字符串或者元組等。例如:

字典中,習慣將各元素對應的索引稱為鍵(key),各個鍵對應的元素稱為值(value),鍵及其關聯的值稱為“鍵值對”。字典類型很像學生時代常用的《新華字典》。我們知道,通過《新華字典》中的音節表,可以快速找到想要查找的漢字。其中,字典里的音節表就相當于字典類型中的鍵,而鍵對應的漢字則相當于值。總的來說,字典類型所具有的主要特征與解釋如表2-2所示。

表2-2 字典類型的主要特征與解釋

字典的創建有以下3種方式。

1.使用“{}”創建字典

由于字典中每個元素都包含兩部分,分別是鍵(key)和值(value),因此在創建字典時,鍵和值之間使用冒號(:)分隔,相鄰元素之間使用逗號(,)分隔,所有元素放在大括號{}中。

使用{}創建字典的語法格式如下:

其中dictname表示字典變量名,keyn:valuen表示各個元素的鍵值對。需要注意的是,同一字典中的各個鍵必須唯一,不能重復。

【例2-43】 用“{}”創建字典。

運算結果:

可以看到,字典的鍵可以是整數、字符串或者元組,只要符合唯一和不可變的特性就行;字典的值可以是Python支持的任意數據類型。

2.通過fromkeys()方法創建字典

在Python中,還可以使用dict字典類型提供的fromkeys()方法創建帶有默認值的字典,具體格式為:

其中,list參數表示字典中所有鍵的列表(list);value參數表示默認值,如果不寫,則為空值None。

【例2-44】 用fromkeys()方法創建字典。

運算結果:

可以看到,city列表中的元素全部作為了renkou字典的鍵,而各個鍵對應的值都是2000。這種創建方式通常用于初始化字典,設置value的默認值。

3.通過dict()映射函數創建字典

通過dict()函數創建字典時,可以向dict()函數傳入列表或元組,而它們中的元素又各自是包含兩個元素的列表或元組,其中第一個元素作為鍵,第二個元素作為值。

【例2-45】 用4種方式創建同一個字典。

運算結果:

主站蜘蛛池模板: 浪卡子县| 驻马店市| 盱眙县| 电白县| 大厂| 清水县| 马关县| 望都县| 黄大仙区| 额济纳旗| 津南区| 安平县| 西充县| 通海县| 纳雍县| 开封县| 牡丹江市| 青州市| 巴中市| 孝昌县| 娱乐| 临高县| 南昌市| 辛集市| 安远县| 光山县| 湘乡市| 会同县| 海宁市| 南丹县| 宿松县| 册亨县| 台安县| 凤台县| 商河县| 定南县| 雷山县| 海城市| 阳谷县| 固原市| 敦化市|