首页 > 解决方案 > 如何将随机键值对传递给 Python 中的函数/构造函数?

问题描述

我有这个字典

cards = {
    'A': 1,
    '2': 2,
    '3': 3,
    '4': 4,
    '5': 5,
    '6': 6,
    '7': 7,
    '8': 8,
    '9': 9,
    '10': 10,
    'J': 10,
    'Q': 10,
    'K': 10
}

而这堂课

class Dealer:

    def __init__(self, hand1, hand2):
        self.hand1 = hand1
        self.hand2 = hand2

我想将一个随机键值对传递给构造函数。我不知道怎么...我试过这个

dealer = Dealer(cards, cards)但它会通过整个字典。

我也试过这个

dealer = Dealer(cards[random.choice(list(cards.keys()))], cards[random.choice(list(cards.keys()))])

并且可以获得一个随机值,但我想要一个键值对或者至少只是传递它们的键?

标签: pythondictionarykey-value

解决方案


你在正确的轨道上。从字典中获取一个键,然后用它来查找它的对应值。像这样:

import random

adict = {"1":"4","2":"5"}

k = random.choice(list(adict.keys()))
pair = (k, adict[k])

print(pair)
# output: ('1','4')

推荐阅读