我想从字典中提取一个值〉= 0.05的键。
{'Bed_to_Toilet': 0.5645161290322581,
'Sleep': 0.016129032258064516,
'Morning_Meds': 0.03225806451612903,
'Watch_TV': 0.0,
'Kitchen_Activity': 0.04838709677419355,
'Chores': 0.0,
'Leave_Home': 0.03225806451612903,
'Read': 0.0,
'Guest_Bathroom': 0.08064516129032258,
'Master_Bathroom': 0.22580645161290322}
我希望startActivity
是这些键中的一个随机名字,比如我第一次运行代码时是startActivity = Bed_to_Toilet
,第二次是startActivity = Guest_Bathroom
,以此类推,我该怎么做呢?
我试过这么做
def findFirstActivity(self, startActModel):
startActivity, freq = random.choice(list(startActModel.items()))
return startActivity
而且效果很好,我只需要一种方法来添加一个条件。
2条答案
按热度按时间33qvvth11#
首先,获取符合您的条件的引用键列表:
然后您可以从该列表中
random.choice
:此时,如果需要,您可以返回并访问所选的值:
bweufnob2#
如果你想保持你的API不变,你可以传递给
findFirstActivity()
一个你的dict的过滤版本。