鉴于以下清单:
colors=['#c85200','#5f9ed1','lightgrey','#ffbc79','#006ba4','dimgray','#ff800e','#a2c8ec'
,'grey','salmon','cyan','silver']这张清单是:
Hospital=['a','b','c','d']在我根据名单的长度得到颜色的数目后-‘医院’:
num_hosp=len(Hospital)
colrs=colors[:num_hosp]
colrs
['#c85200', '#5f9ed1', 'lightgrey', '#ffbc79']...and将列表压缩到一起:
hcolrs=zip(Hospitals,colrs)接下来,我希望能够从hcolrs选择一个或多个颜色,如果给出一个或多个医院从‘医院’的列表。
如下所示:
newHosps=['a','c'] #input
newColrs=['#c85200','lightgrey'] #output提前感谢!
发布于 2016-06-14 17:02:09
将zip的结果传递给dict构造函数,使查找变得简单/快速:
# Don't need to slice colors; zip stops when shortest iterable exhausted
hosp_to_color = dict(zip(Hospitals, colors))然后使用它:
newHosps = ['a','c']
newColrs = [hosp_to_color[h] for h in newHosps]https://stackoverflow.com/questions/37818070
复制相似问题