我有一个看起来像这样的字典列表:
serv=[{'scheme': 'urn:x-esri:specification:ServiceType:DAP',
'url': 'http://www.esrl.noaa.gov/psd/thredds/dodsC/Datasets/air.mon.anom.nobs.nc'},
{'scheme': 'urn:x-esri:specification:ServiceType:WMS',
'url': 'http://www.esrl.noaa.gov/psd/thredds/wms/Datasets/air.mon.anom.nobs.nc?service=WMS&version=1.3.0&request=GetCapabilities'},
{'scheme': 'urn:x-esri:specification:ServiceType:WCS',
'url': 'http://ferret.pmel.noaa.gov/geoide/wcs/Datasets/air.mon.anom.nobs.nc?service=WCS&version=1.0.0&request=GetCapabilities'}]
我想找到对应的 URL,ServiceType:WMS
这意味着url
从这个列表中找到 key 的值,其中scheme
key 具有 value urn:x-esri:specification:ServiceType:WMS
。
所以我有这个工作:
for d in serv:
if d['scheme']=='urn:x-esri:specification:ServiceType:WMS':
url=d['url']
print url
产生
http://www.esrl.noaa.gov/psd/thredds/wms/Datasets/air.mon.anom.nobs.nc?service=WMS&version=1.3.0&request=GetCapabilities
但是我刚刚看了Raymond Hettinger 的 PyCon 演讲,最后他说如果你可以把它说成一个句子,它应该用一行 Python 来表达。
那么有没有一种更漂亮、更惯用的方式来实现相同的结果,也许只需要一行 Python 代码?
谢谢,丰富