从字典中随机选择一个条目

2024-09-29 23:16:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下python词典:

    truthDict = {
     1: False,
    -1: True,
     3: True,
    -3: False,
    -4: False,
     4: True,
     2: True,
    -2: True,
     5: False,
    -5: True
    }

我想把其中一个键倒过来:

我试过这个:

    pick = random.choice(truthDict.keys())  
    truthDict[pick] = not(truthDict[pick])

但它不工作,我真的很感谢任何帮助


Tags: falsetruenotrandomkeys词典choicepick
2条回答

你已经很接近了,dict_keys不支持索引,所以请传递一个列表,它可以:

pick = random.choice([*truthDict])
truthDict[pick] = not truthDict[pick]

可以在truthDict.keys()周围使用list()

pick = random.choice(list(truthDict.keys()))
truthDict[pick]  = not(truthDict[pick])

time: ~5.72 µs


或者使用*解包

pick = random.choice([*(truthDict.keys())])
truthDict[pick]  = not(truthDict[pick])

time: ~4.53 µs

相关问题 更多 >

    热门问题