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ìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
pytorch模型保存與加載中的一些問題實戰(zhàn)記錄
一般來說,保存模型是把參數(shù)全部用model.cpu().state_dict(),然后加載模型時一般用model.load_state_dict(torch.load(model_path)),下面這篇文章主要給大家介紹了關(guān)于pytorch模型保存與加載中的一些問題實戰(zhàn)記錄,需要的朋友可以參考下2022-10-10
python實現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù)
這篇文章主要介紹了python實現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù),可實現(xiàn)將rgb表示的顏色轉(zhuǎn)換成hex值的功能,非常具有實用價值,需要的朋友可以參考下2015-03-03
DataFrame窗口函數(shù)rolling()的用法
這篇文章主要介紹了DataFrame窗口函數(shù)rolling()的用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02

