0
需要一些幫助才能理解Python和get
字典方法中的一些東西。python調用函數在字典中獲取方法代替默認值
假設我們有一些字典列表,我們需要進行一些數據轉換(例如,通過密鑰'name'
獲取所有字典中的所有名稱)。如果在特定字典中找不到密鑰'name'
,我又該怎麼稱呼某些特定功能func(data)
。
def func(data):
# do smth with data that doesn't contain 'name' key in dict
return some_data
def retrieve_data(value):
return ', '.join([v.get('name', func(v)) for v in value])
這種方法適用相當好,但就一個,我可以看到功能func
(從retrieve_data
)每次通話,即使關鍵'name'
存在於字典。因爲它可以讓get
甚至被調用之前評估
def retrieve_data(value):
return ', '.join([v['name'] if 'name' in v else func(v) for v in value])
在你的榜樣,每次的原因func
被稱爲是: