【问题标题】:How to pick one key from a dictionary randomly如何从字典中随机选择一个键
【发布时间】:2016-09-06 07:31:55
【问题描述】:

我是 Python 的初学者。我尝试使用这种方法:

random.choice(my_dict.keys())

但是有一个错误:

'dict_keys' object does not support indexing

我的字典很简单,喜欢

my_dict = {('cloudy', 1 ): 10, ('windy', 1): 20}

请问您是如何解决这个问题的?非常感谢!

【问题讨论】:

    标签: python dictionary random


    【解决方案1】:

    像这样,

    import random
    def get_random_key(d: typing.Dict):
        target_pos = random.randint(1, min(1000, len(d) - 1))
        for i, key in enumerate(d):
            if i == target_pos:
                return key
    

    【讨论】:

      【解决方案2】:

      要从名为my_dict 的字典中选择一个随机键,您可以使用:

      random.choice(list(my_dict))
      

      这适用于 Python 2 和 Python 3。

      有关此方法的更多信息,请参阅:https://stackoverflow.com/a/18552025

      【讨论】:

        猜你喜欢
        • 2015-05-25
        • 1970-01-01
        • 2021-05-25
        • 1970-01-01
        • 2020-04-04
        • 1970-01-01
        • 1970-01-01
        • 2015-01-09
        • 2016-04-14
        相关资源
        最近更新 更多