python 24点游戏 源码
时间: 2023-05-14 18:01:47 浏览: 83
Python 24点游戏源码如下:
``` python
import itertools
#输入四个数字
num_1 = int(input("请输入第一个数字: "))
num_2 = int(input("请输入第二个数字: "))
num_3 = int(input("请输入第三个数字: "))
num_4 = int(input("请输入第四个数字: "))
#通过itertools模块中的permutations函数得到所有数字的排列组合
cards = list(itertools.permutations([num_1, num_2, num_3, num_4], 4))
#枚举每一种排列组合,并进行计算
for i in range(len(cards)):
expression = ""
for j in range(4):
expression += str(cards[i][j]) + " "
#通过eval函数将字符串表达式转换为数学计算结果
if abs(eval(expression) - 24) < 0.00001:
print(expression + "= 24")
```
该源码首先让用户输入四个数字,然后通过itertools模块中的permutations函数得到所有数字的排列组合。接着,遍历每一个排列组合,并将其转换为一个数学表达式,通过eval函数计算表达式的结果。如果结果等于24,则输出表达式和结果。该源码利用了Python中的迭代器和高阶函数,方便快捷地实现了24点游戏的计算功能。