Python編程實現(xiàn)從字典中提取子集的方法分析
本文實例講述了Python編程實現(xiàn)從字典中提取子集的方法。分享給大家供大家參考,具體如下:
首先我們會想到使用字典推導(dǎo)式(dictionary comprehension)來解決這個問題,例如以下場景:
prices={'ACME':45.23,'APPLE':666,'IBM':343,'HPQ':33,'FB':10}
#選出價格大于 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)
運行結(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)
但是,對于第一個輸出結(jié)果,字典推導(dǎo)式的方案相比更加清晰而且運行更快;第二個輸出的速度也慢了很多,所以,采用字典推導(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īng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
如何使Python中的print()語句運行結(jié)果不換行
這篇文章主要介紹了如何使Python中的print()顯示當前語句后不換行,print() 是一個常用函數(shù),但是每次,print()語句顯示后都會換行,本問我們就來節(jié)日如何使print()顯示當前語句后不換行,需要的朋友可以參考一下2022-03-03
Python迭代器協(xié)議及for循環(huán)工作機制詳解
這篇文章主要介紹了Python迭代器協(xié)議及for循環(huán)工作機制詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07
Win11平臺安裝和配置NeoVim0.8.2編輯器搭建Python3開發(fā)環(huán)境詳細過程(2023最新攻略)
這篇文章主要介紹了Win11平臺安裝和配置NeoVim0.8.2編輯器搭建Python3開發(fā)環(huán)境(2023最新攻略),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-01-01
Python時間戳與時間字符串互相轉(zhuǎn)換實例代碼
這篇文章主要介紹了Python時間戳與時間字符串互相轉(zhuǎn)換實例代碼,大家參考使用2013-11-11

