Python編程實(shí)現(xiàn)從字典中提取子集的方法分析
本文實(shí)例講述了Python編程實(shí)現(xiàn)從字典中提取子集的方法。分享給大家供大家參考,具體如下:
首先我們會(huì)想到使用字典推導(dǎo)式(dictionary comprehension)來解決這個(gè)問題,例如以下場景:
prices={'ACME':45.23,'APPLE':666,'IBM':343,'HPQ':33,'FB':10}
#選出價(jià)格大于 200 的
gt200={key:value for key,value in prices.items() if value > 200}
print(gt200)
print('---------------------')
#提取科技公司的相關(guān)信息
tech={'APPLE','IBM','HPQ','FB'}
techDict={ key:value for key,value in prices.items() if key in tech}
print(techDict)
運(yùn)行結(jié)果如下:
{'APPLE': 666, 'IBM': 343}
---------------------
{'APPLE': 666, 'FB': 10, 'IBM': 343, 'HPQ': 33}
大部分可以通過字典推導(dǎo)式解決的問題也可以通過創(chuàng)建元組序列然后將它們傳給dict()函數(shù)來完成,例如:
gt200Dict=dict((key,value) for key,value in prices.items() if value > 200)
print(gt200Dict)
print('---------------------')
techDict2={ key:prices[key] for key in prices.keys() & tech}
print(techDict2)
但是,對于第一個(gè)輸出結(jié)果,字典推導(dǎo)式的方案相比更加清晰而且運(yùn)行更快;第二個(gè)輸出的速度也慢了很多,所以,采用字典推導(dǎo)式為最佳選擇方案。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python字典操作技巧匯總》、《Python列表(list)操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
pytorch模型保存與加載中的一些問題實(shí)戰(zhàn)記錄
一般來說,保存模型是把參數(shù)全部用model.cpu().state_dict(),然后加載模型時(shí)一般用model.load_state_dict(torch.load(model_path)),下面這篇文章主要給大家介紹了關(guān)于pytorch模型保存與加載中的一些問題實(shí)戰(zhàn)記錄,需要的朋友可以參考下2022-10-10
python如何解析配置文件并應(yīng)用到項(xiàng)目中
這篇文章主要介紹了python如何解析配置文件并應(yīng)用到項(xiàng)目中,如果我們更換了電腦也可以繼續(xù)使用原來的文件,只要把里面的數(shù)據(jù)拷貝到游戲執(zhí)行的配置文件里面就可以了,我們重新再進(jìn)入就不用重新設(shè)置內(nèi)掛的配置了,需要的朋友可以參考下2019-06-06
python實(shí)現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù)
這篇文章主要介紹了python實(shí)現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù),可實(shí)現(xiàn)將rgb表示的顏色轉(zhuǎn)換成hex值的功能,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03
python上下文管理器協(xié)議的實(shí)現(xiàn)
這篇文章主要介紹了python上下文管理器協(xié)議的實(shí)現(xiàn),在python中所有實(shí)現(xiàn)了上下文管理器協(xié)議的對象 都可以用使用with操作,with啟動(dòng)了對象的上下文管理器2022-06-06
DataFrame窗口函數(shù)rolling()的用法
這篇文章主要介紹了DataFrame窗口函數(shù)rolling()的用法,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02

