Python 如何确定哪个变量更接近21?

Python 如何确定哪个变量更接近21?,python,Python,我是一个尝试创建游戏21的初学者。我搜索了类似的信息,但无法或遗漏了与我的问题相关的信息。如果两个分数都高于或低于21,我希望能够确定哪个分数更接近21。例如,如果用户在被问到是否要再次掷骰时说“n”,而他和计算机的得分分别为18和13,则用户应获胜。您可以使用abs(数字)功能来解决此问题: num1 = int(input("Please enter the first number: ")) num2 = int(input("Please enter the second number:

我是一个尝试创建游戏21的初学者。我搜索了类似的信息,但无法或遗漏了与我的问题相关的信息。如果两个分数都高于或低于21,我希望能够确定哪个分数更接近21。例如,如果用户在被问到是否要再次掷骰时说“n”,而他和计算机的得分分别为18和13,则用户应获胜。

您可以使用abs(数字)功能来解决此问题:

num1 = int(input("Please enter the first number: "))
num2 = int(input("Please enter the second number: "))
key = lambda num: abs(21-num)
print("{} is closer than {} to 21".format(min(num1, num2, key=key), max(num1, num2, key=key)))

你知道abs()函数吗?它总是给你一个整数值的正版本。所以,如果你做“abs(21-n):”它会告诉你var'n'是如何以正单位远离'21'的。那有用吗?我想是的!我刚刚写了一份攻击计划,我想这会解决我的问题:)谢谢你,史蒂夫!这是唯一的答案,怎么可能呢。@steve最好现在就有答案,而不仅仅是在评论中得到答案!stackoverflow是这样说的:“使用评论来询问更多信息或提出改进建议。避免在评论中回答问题。”。我对此没有意见,所以我会遵守规则。