Python如何随机选择一个有3个值的veriable?

Python如何随机选择一个有3个值的veriable?,python,Python,好的,我会尽可能简单地解释,我希望玩家在1到3之间随机输入,然后将怪物添加到手上,但我不确定如何使用3个值命名、攻击和防御的变量,我试着把变量放入一个列表中,然后随机选择,但它错误地说不能添加超过1个veriable的veriable import random class Mon: def __init__(self, name, a, d): self.name, self.attack, self.defence

好的,我会尽可能简单地解释,我希望玩家在1到3之间随机输入,然后将怪物添加到手上,但我不确定如何使用3个值命名、攻击和防御的变量,我试着把变量放入一个列表中,然后随机选择,但它错误地说不能添加超过1个veriable的veriable


    import random
    
    
    class Mon:
        def __init__(self, name, a, d):
            self.name, self.attack, self.defence = name, a, d
    
    
    player_hand = []
    # Monsters      Name   Attack Defence
    monster1 = Mon("geoff", 1000, 800)
    monster2 = Mon("Harry", 900, 1000)
    monster3 = Mon("Sophie", 1900, 1600)
    
    while True:
        try:
            player = int(input("Draw a card! :1"))
        except:
            print("You didnt pick a number")
            continue


我不知道你想做什么,但也许是这样:

mons=[monster1,monster2,monster3]
当前菜单=随机选择菜单(菜单)

现在,
current\u mon
是来自
monster1、monster2或monster3的随机怪物。您可以使用字典,例如:

monster1 = {"name": "Geoff", "Attack": 1000, "Defence": 800}
monster2 = {"name": "Harry", "Attack": 900, "Defence": 1000}
monster3 = {"name": "Sophie", "Attack": 1900, "Defence": 1600}
要提取值,请执行以下操作:

例如,要提取怪物1的攻击:

print(monster1["attack"])
为了使怪物随机化,您可以执行以下操作:

def randomize_monster():
    print (random.choice(["monster1", "monster2", "monster3"]))
    
randomize_monster()

这在3个怪物之间随机排列,并打印“怪物1”、“怪物2”或“怪物3”。

对不起,我不明白这个问题。你能显示预期的产出吗?或者你想实现什么?这似乎更接近我想要的,所以最后一件事是我应该如何做一个随机。randint(1,3),这样我就可以让Enmy有一个随机怪物,让用户有一个随机怪物