如何使用 min() 和 max() 函数打印变量名称而不是值? [重复]

问题描述 投票:0回答:1

这是我的机器人卡牌游戏代码。

card_5 = 3 #all variable names
card_6 = 4
card_7 = 5
card_8 = 6
player_card_list = [card_5,card_6,card_7,card_8]#list of variables
min_player_card = int(min(player_card_list))#i want this variable to print the variable name
max_player_card = int(max(player_card_list))
python max min
1个回答
1
投票

如果您想要一个与值关联的名称,您需要的是一个

dict
,而不是一个列表。考虑

player_card_dict = {
    "card_5": card_5,
    "card_6": card_6,
    "card_7": card_7,
    "card_8": card_8,
}

然后我们可以在

key
min
上使用可选的
max
参数来控制比较的完成方式。

min_player_card = min(player_card_dict, key=lambda name: player_card_dict[name])
max_player_card = max(player_card_dict, key=lambda name: player_card_dict[name])
© www.soinside.com 2019 - 2024. All rights reserved.