Slicing a dictionary by keys that start with a certain string

纵饮孤独 提交于 2019-11-28 20:06:11
Mark Byers

How about this:

in python 2.x :

def slicedict(d, s):
    return {k:v for k,v in d.iteritems() if k.startswith(s)}

In python 3.x :

def slicedict(d, s):
    return {k:v for k,v in d.items() if k.startswith(s)}
seriyPS

In functional style:

dict(filter(lambda item: item[0].startswith(string),sourcedict.iteritems()))

In Python 3 use items() instead:

def slicedict(d, s):
    return {k:v for k,v in d.items() if k.startswith(s)}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!