You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中随机获取字典的键及其对应值?

解决随机获取字典键及其对应值的问题

你可以通过dict.items()方法直接获取字典的键值对元组列表,再用random.choice()随机选择一组,就能同时拿到键和对应的值。

修改后的基础代码

import random

dict_example = {
        "name 1" : {
        "born" : "London",
        "residence" : "Brighton",
        },
        "name 2" : {
        "born" : "Paris",
        "residence" : "Nice",
        },
}

# 获取所有键值对的元组列表,每个元组格式为(键, 值)
random_pair = random.choice(list(dict_example.items()))
# 拆分键和值
random_key, random_value = random_pair

print(f"随机键: {random_key}")
print(f"对应值: {random_value}")

简化写法

如果不需要单独存储键值对列表,也可以直接一步完成:

random_key, random_value = random.choice(list(dict_example.items()))

用于后续对比的示例

如果需要随机获取多组键值对进行对比,可以封装成函数,同时确保选中的键不重复:

import random

dict_example = {
        "name 1" : {
        "born" : "London",
        "residence" : "Brighton",
        },
        "name 2" : {
        "born" : "Paris",
        "residence" : "Nice",
        },
}

def get_random_key_value():
    return random.choice(list(dict_example.items()))

# 获取第一组
key1, value1 = get_random_key_value()
# 获取第二组,确保和第一组键不同
key2, value2 = get_random_key_value()
while key1 == key2:
    key2, value2 = get_random_key_value()

# 对比出生地
print(f"{key1} 的出生地: {value1['born']}")
print(f"{key2} 的出生地: {value2['born']}")
print(f"两地是否相同: {value1['born'] == value2['born']}")

内容的提问来源于stack exchange,提问作者user19876853

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 19:20:31