奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌

您現(xiàn)在所在的位置:首頁 >學(xué)習(xí)資源 > Python全棧+人工智能入門教材 > Python基礎(chǔ)入門教程45:Python 字典(Dictionary)

Python基礎(chǔ)入門教程45:Python 字典(Dictionary)

來源:奇酷教育 發(fā)表于:

Python開發(fā) Python教程 Python基礎(chǔ)

  Python 字典(Dictionary)

  字典是另一種可變?nèi)萜髂P?,且可存儲任意類型對象?/span>

  字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:

  d = {key1 : value1, key2 : value2 }

  鍵必須是唯一的,但值則不必。

  值可以取任何數(shù)據(jù)類型,但鍵必須是不可變的,如字符串,數(shù)字或元組。

  一個簡單的字典實例:

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

  也可如此創(chuàng)建字典:

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

  訪問字典里的值

  把相應(yīng)的鍵放入熟悉的方括弧,如下實例:

  實例

  #!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Name']: ", dict['Name']; print "dict['Age']: ", dict['Age'];

  以上實例輸出結(jié)果:

  dict['Name']: Zara

  dict['Age']: 7

  如果用字典里沒有的鍵訪問數(shù)據(jù),會輸出錯誤如下:

  實例

  #!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; print "dict['Alice']: ", dict['Alice'];

  以上實例輸出結(jié)果:

  dict['Alice']:

  Traceback (most recent call last):

  File "test.py", line 5, in

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

  KeyError: 'Alice'

  修改字典

  向字典添加新內(nèi)容的方法是增加新的鍵/值對,修改或刪除已有鍵/值對如下實例:

  實例

  #!/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'];以上實例輸出結(jié)果:

  dict['Age']: 8

  dict['School']: DPS School

  刪除字典元素

  能刪單一的元素也能清空字典,清空只需一項操作。

  顯示刪除一個字典用del命令,如下實例:

  實例

  #!/usr/bin/python # -*- coding: UTF-8 -*- dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}; del dict['Name']; # 刪除鍵是'Name'的條目 dict.clear(); # 清空詞典所有條目 del dict ; # 刪除詞典 print "dict['Age']: ", dict['Age']; print "dict['School']: ", dict['School'];

  但這會引發(fā)一個異常,因為用del后字典不再存在:

  dict['Age']:

  Traceback (most recent call last):

  File "test.py", line 8, in

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

  TypeError: 'type' object is unsubscriptable

  注:del()方法后面也會討論。

  字典鍵的特性

  字典值可以沒有限制地取任何python對象,既可以是標(biāo)準(zhǔn)的對象,也可以是用戶定義的,但鍵不行。

  兩個重要的點需要記?。?/span>

  1)不允許同一個鍵出現(xiàn)兩次。創(chuàng)建時如果同一個鍵被賦值兩次,后一個值會被記住,如下實例:

  實例

  #!/usr/bin/python dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}; print "dict['Name']: ", dict['Name'];

  以上實例輸出結(jié)果:

  dict['Name']: Manni

  2)鍵必須不可變,所以可以用數(shù)字,字符串或元組充當(dāng),所以用列表就不行,如下實例:

  實例

  #!/usr/bin/python dict = {['Name']: 'Zara', 'Age': 7}; print "dict['Name']: ", dict['Name'];

  以上實例輸出結(jié)果:

  Traceback (most recent call last):

  File "test.py", line 3, in

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

  TypeError: list objects are unhashable

  字典內(nèi)置函數(shù)&方法

  Python字典包含了以下內(nèi)置函數(shù):

  序號函數(shù)及描述

  1cmp(dict1, dict2)

  比較兩個字典元素。

  2len(dict)

  計算字典元素個數(shù),即鍵的總數(shù)。

  3str(dict)

  輸出字典可打印的字符串表示。

  4type(variable)

  返回輸入的變量類型,如果變量是字典就返回字典類型。

  Python字典包含了以下內(nèi)置方法:

  序號函數(shù)及描述

  1dict.clear()

  刪除字典內(nèi)所有元素

  2dict.copy()

  返回一個字典的淺復(fù)制

  3dict.fromkeys(seq[, val]))

  創(chuàng)建一個新字典,以序列 seq 中元素做字典的鍵,val 為字典所有鍵對應(yīng)的初始值

  4dict.get(key, default=None)

  返回指定鍵的值,如果值不在字典中返回default值

  5dict.has_key(key)

  如果鍵在字典dict里返回true,否則返回false

  6dict.items()

  以列表返回可遍歷的(鍵, 值) 元組數(shù)組

  7dict.keys()

  以列表返回一個字典所有的鍵

  8dict.setdefault(key, default=None)

  和get()類似, 但如果鍵不存在于字典中,將會添加鍵并將值設(shè)為default

  9dict.update(dict2)

  把字典dict2的鍵/值對更新到dict里

  10dict.values()

  以列表返回字典中的所有值

  11pop(key[,default])

  刪除字典給定鍵 key 所對應(yīng)的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。

  12popitem()

  隨機(jī)返回并刪除字典中的一對鍵和值。

主站蜘蛛池模板: 玉米深加工机械,玉米加工设备,玉米加工机械等玉米深加工设备制造商-河南成立粮油机械有限公司 | 齿轮减速电机一体机_蜗轮蜗杆减速马达-德国BOSERL齿轮减速机带电机生产厂家 | 恒压供水控制柜|无负压|一体化泵站控制柜|PLC远程调试|MCGS触摸屏|自动控制方案-联致自控设备 | 风淋室生产厂家报价_传递窗|送风口|臭氧机|FFU-山东盛之源净化设备 | 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 地图标注|微信高德百度地图标注|地图标记-做地图[ZuoMap.com] | 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 纯水设备_苏州皙全超纯水设备水处理设备生产厂家| 作文导航网_作文之家_满分作文_优秀作文_作文大全_作文素材_最新作文分享发布平台 | 外贮压-柜式-悬挂式-七氟丙烷-灭火器-灭火系统-药剂-价格-厂家-IG541-混合气体-贮压-非贮压-超细干粉-自动-灭火装置-气体灭火设备-探火管灭火厂家-东莞汇建消防科技有限公司 | 钢格栅板_钢格板网_格栅板-做专业的热镀锌钢格栅板厂家-安平县迎瑞丝网制造有限公司 | 北京征地律师,征地拆迁律师,专业拆迁律师,北京拆迁律师,征地纠纷律师,征地诉讼律师,征地拆迁补偿,拆迁律师 - 北京凯诺律师事务所 | 山东限矩型液力偶合器_液力耦合器易熔塞厂家-淄博市汇川源机械厂 | 山东led显示屏,山东led全彩显示屏,山东LED小间距屏,临沂全彩电子屏-山东亚泰视讯传媒有限公司 | 粉丝机械,粉丝烘干机,粉丝生产线-招远市远东粉丝机械有限公司 | 标准品网_标准品信息网_【中检计量】 | 热回收盐水机组-反应釜冷水机组-高低温冷水机组-北京蓝海神骏科技有限公司 | 东莞办公家具厂家直销-美鑫【免费3D效果图】全国办公桌/会议桌定制 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 网站优化公司_SEO优化_北京关键词百度快速排名-智恒博网络 | 生物除臭剂-除味剂-植物-污水除臭剂厂家-携葵环保有限公司 | 中天寰创-内蒙古钢结构厂家|门式刚架|钢结构桁架|钢结构框架|包头钢结构煤棚 | 隔离变压器-伺服变压器--输入输出电抗器-深圳市德而沃电气有限公司 | 语料库-提供经典范文,文案句子,常用文书,您的写作得力助手 | 干粉砂浆设备_干混砂浆生产线_腻子粉加工设备_石膏抹灰砂浆生产成套设备厂家_干粉混合设备_砂子烘干机--郑州铭将机械设备有限公司 | 基业箱_环网柜_配电柜厂家_开关柜厂家_开关断路器-东莞基业电气设备有限公司 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | 衡阳耐适防护科技有限公司——威仕盾焊接防护用品官网/焊工手套/焊接防护服/皮革防护手套 | 光伏家 - 太阳能光伏发电_分布式光伏发电_太阳能光伏网 | 蔬菜配送公司|蔬菜配送中心|食材配送|饭堂配送|食堂配送-首宏公司 | 江苏齐宝进出口贸易有限公司| 广州展览设计公司_展台设计搭建_展位设计装修公司-众派展览装饰 广州展览制作工厂—[优简]直营展台制作工厂_展会搭建资质齐全 | 青岛成人高考_山东成考报名网 | 鹤壁创新仪器公司-全自动量热仪,定硫仪,煤炭测硫仪,灰熔点测定仪,快速自动测氢仪,工业分析仪,煤质化验仪器 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 河南空气能热水器-洛阳空气能采暖-洛阳太阳能热水工程-洛阳润达高科空气能商行 | 废气处理_废气处理设备_工业废气处理_江苏龙泰环保设备制造有限公司 | 编织人生 - 权威手工编织网站,编织爱好者学习毛衣编织的门户网站,织毛衣就上编织人生网-编织人生 | C形臂_动态平板DR_动态平板胃肠机生产厂家制造商-普爱医疗 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 西安标准厂房_陕西工业厂房_西咸新区独栋厂房_长信科技产业园官方网站 |