2 回答

一只甜甜圈
TA貢獻1836條經(jīng)驗 獲得超5個贊
你可以從下面這樣開始:
from itertools import product
target = 1942
test_str = "1{0[0]}2{0[1]}3{0[2]}4{0[3]}5{0[4]}6{0[5]}7{0[6]}8{0[7]}9"
for a in product(["*", "", "+", "/", "-", ""], repeat=8): # Iterate all posibilites
result_str = test_str.format(a)
if eval(result_str) == target:
print(result_str)
break
并進行優(yōu)化,使其更易于擴展到更多數(shù)字。但對于您的特定問題,這工作正常。我找到了這個解決方案:
1*2/3+4*56*78/9
如果您需要更多信息,請查看評估。

明月笑刀無情
TA貢獻1828條經(jīng)驗 獲得超4個贊
你可以從蟒蛇使用模塊parser
import parser
formula = "1 + 2 + 3 + 4 + 5 * 6 * 7 * 8 * 9"
code = parser.expr(formula).compile()
print eval(code)
添加回答
舉報
0/150
提交
取消