老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

Python入門之字典

????????????????????????????????????????????????????Python入門之字典

成都創新互聯是一家集網站建設,尖草坪企業網站建設,尖草坪品牌網站建設,網站定制,尖草坪網站建設報價,網絡營銷,網絡優化,尖草坪網站推廣為一體的創新建站企業,幫助傳統企業提升企業形象加強企業競爭力。可充分滿足這一群體相比中小企業更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們為更多的企業打造出實用型網站。

一、什么是字典

1、字典的實現原理

? ? ?字典的實現原理和差字典是類似的。當我們在字典中查找某個字時,一種辦法是從字典的第一頁開始往后翻,

直到找到我們要查找的字為止。這種辦法就是在列表中查找元素的方法,其缺點:字典中的字數越多查找的效率

越低。第二種方法是先在字典的索引表里(比如部首表)查找這個字對應的頁碼,然后直接到這個字對應的頁,

其優點是:查找效率不會隨著字典中字數的增加而降低,無論查找哪個字,查找速度非常快。

2、字典的特點

a)? 字典中的所有元素都是一個key-value時,通過指定的key總能映射到唯一確定的value。字典中不可以存在重復的,

但是可以存在重復的value。

b) 字典中的元素是無序的。順序不重要重要的是key和value的映射關系。

c)? 字典中的key必須是不可變對象。存取字典中的key-value對時,系統會調用內置函數hash根據指定key計算出value

存儲位置,也就是哈希值。對于指定的key,為了保證每次計算出的哈希值都是相同的,要求key必須是不可變對象。也就是說,

只有不可變對象才存在哈希值。

d)? 字典可以根據需要動態地伸縮。系統會根據需要動態分配和回收內存,因此在使用前無須預先聲明字典的容量。

e)? 字典會浪費較大的內存,與列表相比是用空間換取查詢時間。

二、為什么需要字典

例如:電話簿中存儲了姓名和電話號碼:

? ? 張三? 111111111

? ? 李四? 222222222

? ? 王五? 333333333

? ? 趙六? 444444444

# 姓名

names = ['張三','李四','王五','趙六']

# 電話號碼

numbers = ['111111111','222222222','333333333','444444444']

print(numbers[names.index('張三')])?#?111111111
for?i,n?in?zip(names,numbers):
????print(i,n)
#或者使用zip進行并行遍歷
張三?111111111
李四?222222222
王五?333333333
趙六?444444444

最好是能把姓名和電話號碼全部存儲在一個和腳phonebook的數據結構中,就能直接獲得其對應的電話號碼。

phonebook?=?{'張三':'111111111','李四':'222222222','王五':'333333333','趙六':'444444444'}
print(phonebook['張三'])?#111111111

三、字典的創建

1、使用花括號{}的方式

d1?=?{'zhangsan':18,'lisi':19,'wangwu':20}
print(d1)?#?{'zhangsan':?18,?'lisi':?19,?'wangwu':?20}
#空字典創建
d1?=?{}
print(d1)?#?{}

2、使用內置函數dict()

#傳遞字典參數
d2?=?dict({'zhangsan':18,'lisi':19,'wangwu':20})
print(d2)?#?{'zhangsan':?18,?'lisi':?19,?'wangwu':?20}
#傳遞帶元組的列表
d2?=?dict([('zhangsan',18),('lisi',19),('wangwu',20)])
print(d2)?#?{'zhangsan':?18,?'lisi':?19,?'wangwu':?20}
#傳遞zip迭代對象
d2?=?dict(zip(['zhangsan','lisi','wangwu'],(18,19,20)))
print(d2)?#?{'zhangsan':?18,?'lisi':?19,?'wangwu':?20}

四、字典的增刪改查

1、查操作

#使用[]的方法傳遞索引
d1?=?dict([('name','zhangsan'),('age',18)])
print(d1['name'])
print(d1['age'])

#get方法
print(d1.get('name'))?#?zhangsan
print(d1.get('age'))??#?18
print(d1.get('abc','NONE'))?#?get允許我們自定義返回值,如果不存在對應值或索引時


2、增操作

d1['hobby']?=?'games'??#增加一個不存在的key-value對
d1.update([('wang',17),('li',16)])??#?使用update方法,一次增加多個key-value對
d1.update({'tianqi':'19'})
d1.update(zhangsan1?=?18)
print(d1)??#?{'name':?'zhangsan',?'age':?18,?'hobby':?'games',?'wang':?17,?'li':?16,?'tianqi':?'19',?'zhangsan1':?18}

3、改操作

d1['age']?=?'27'
d1.update(wang?=?22,tianqi?=?23)
d1.update({'name':'zhangsan1'})
d1.update(hobby?=?'read')
d1.update([('tianqi',23),('zhangsan',25)])
print(d1)??#?{'name':?'zhangsan1',?'age':?'27',?'hobby':?'read',?'wang':?22,?'li':?16,?'tianqi':?23,?'zhangsan1':?18,?'zhangsan':?25}

4、刪操作

d1?=?{'name':?'zhangsan1',?'age':?'27',?'hobby2':?'games',?'hobby1':?'read',?'zhangsan':?25}
d1.pop('name')??#?刪除一個指定key
d1.popitem()??#隨機刪除一個key
del(d1['age'])?#?刪除一個指定key
print(d1)??#?{'hobby2':?'games',?'hobby1':?'read'}
d1.clear()?#?清空列表
print(d1)?#?{}

五、字典的視圖

1、調用keys,values,iteams方法打印字典視圖

print(d1.keys(),type(d1.keys()))??#?dict_keys(['name',?'age',?'hobby2',?'hobby1',?'zhangsan'])??打印字典的key
print(d1.values(),type(d1.values()))?#?dict_values(['zhangsan1',?'27',?'games',?'read',?25])??打印字典的values
print(d1.items(),type(d1.items()))?#?dict_items([('name',?'zhangsan1'),?('age',?'27'),?('hobby2',?'games'),?('hobby1',?'read'),?('zhangsan',?25)])??#?打印字典的key-value

六、為字典設置默認值

1、使用dict.setdefault()方法為字典設置默認值

#?為字典設置默認值
d1?=?dict([('name','zhangsan'),('age',18),('hobby','games')])
print(d1.setdefault('name'))?#?zhangsan?當key-value存在時,返回對應值
print(d1.setdefault('score',90))?#?90??#?當key-value不存在時,賦予默認值,并添加到字典中
print(d1)?#?{'name':?'zhangsan',?'age':?18,?'hobby':?'games',?'score':?90}

七、借助字典創建格式化字符串

d1?=?dict([('name','zhangsan'),('age',18),('hobby','games')])
#?使用%作為占位符
print('名字是:%s,年齡是:%i,愛好是:%s'?%?(d1['name'],d1['age'],d1['hobby']))
print('名字是:%(name)s,年齡是:%(age)i,愛好是:%(hobby)s'?%?d1)
#?使用{}作為占位符
print('名字是:{},年齡是:{},愛好是:{}'?.format(d1['name'],d1['age'],d1['hobby']))
print('名字是:{name},年齡是:{age},愛好是:{hobby}'?.format_map(d1))

名稱欄目:Python入門之字典
URL網址:http://www.xueling.net.cn/article/gcdieo.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 久久999精品久久久有什么优势 | 自拍亚洲伦理 | 一区二区三区精品在线观看 | 国产成人馆 | 色婷婷一区二区三区在线观看 | 汉服女装齐胸襦裙被c到喷水 | 国产三级dvd视频在线观看 | 产后漂亮奶水人妻无码 | 亚洲AV无码成H人动漫无遮挡 | 99国产一区二区精品久久 | 久久久久久九九九九九九 | 国内另类在线 | 中国少妇毛多水多 | 81国产精品久久久久久久久久 | 国产精品无码无片在线观看 | 人妻精品久久无码专区精东影业 | 欧美黄色免费网站 | 美女视频免费看黄的 | 亚洲人成伊人成综合网76 | 免费的又色又爽又黄的片捆绑美女 | 18禁无遮挡无码国产免费网站 | 超级av在线 | japanese18高潮喷水 | 男人的天堂视频精品乱在线 | www.国产区 | 日本乱偷人妻中文字幕在线 | www.国产一区二区三区 | 国产精品国产a | h肉3d动漫在线观看网站 | 亚洲国产中文字幕在线观看 | 色哟哟日韩精品 | 亚洲精品一二 | 老司机午夜福利视频 | 曰本A级毛片无卡免费视频 久久网精品三级片 | 欧美中文在线观看 | 亚洲阿v天堂2019国产 | 黄色影院 | 中文字幕在线播放第一页 | 一级看片免费视频 | 99国产精品久久久久久久成人热 | 小sao货的yin荡之路 |