从python中字典的字典中随机选择

从python中字典的字典中随机选择,python,dictionary,Python,Dictionary,我定义了以下形式的词典: my_dict = { "my_key1": {"key_1": value_1, "key_2": value_2}, "my_key2": {"key_1": value_1, "key_2": value_2, "key_3": value_3}, "my_key3": {"key_1": value_1, "key_2": value_2, "key_3": value_3, , "key_4": value_4}, "my_ke

我定义了以下形式的词典:

my_dict = {
    "my_key1": {"key_1": value_1, "key_2": value_2},
    "my_key2": {"key_1": value_1, "key_2": value_2, "key_3": value_3},
    "my_key3": {"key_1": value_1, "key_2": value_2, "key_3": value_3, , "key_4": value_4},
    "my_key4": {"key_1": value_1, "key_2": value_2}
}
我想为每个my_键随机选择一个“值”。 我在下面尝试了,但没有成功:

for key in my_dict:
    # randomly select from the sub-dictionary
        rand = random.sample(list(param[key]), 1)
    # get value at that randomVal
        net[key] = param[key][rand]
是否有其他方法可以随机选择每个键的值。
提前谢谢

IIUC,您可以使用
列表理解
随机选择

>>> r = [random.choice(list(v.values())) for k,v in my_dict.items()]
['value_2', 'value_2', 'value_3', 'value_4'] # example

IIUC,您可以使用
列表理解
随机。选择

>>> r = [random.choice(list(v.values())) for k,v in my_dict.items()]
['value_2', 'value_2', 'value_3', 'value_4'] # example

我认为您需要
net[key]=param[key][rand[0]]
因为示例返回列表,所以您需要
rand[0]
但是
param
是什么?你是说
my_dict
吗?是的,参数被误印为“my_dict”。谢谢,同样有效:)我想您需要
net[key]=param[key][rand[0]]
既然示例返回列表,您需要
rand[0]
但是
param
是什么?你是说
my_dict
吗?是的,参数被误印为“my_dict”。谢谢,同样有效:)