因此,我正在研究一个助手,在该助手中用户将要求数学答案,而Wolfram alpha将返回它。
我现在的问题是:Wolfram alpha返回数学问题的下一个步骤。
我想要的是:Wolfram alpha在解决整个问题后应以十进制或整数返回答案。
我的代码:
import wolframalpha
query = input("calculate: ")
client = wolframalpha.Client("TYXXXX-PXXXXXXXX2")
query = query.replace(" ", "")
res = client.query(' '.join(query))
answer = next(res.results).text
print("calculating..")
print(f"The answer is {answer}")
示例:
input: 2x = 5
我正在寻找的答案:
output: 2.5
我现在得到的答案:输出:5/2
input: 2x = 5 - 3
我正在寻找的答案:output: x = 1
我得到的答案:2x = 2
这样,您可以获得WolframAlpha提供的最终解决方案(您只需要获取生成器的最后一个元素,而不是仅获取第一个元素即可:]]
import wolframalpha client = wolframalpha.Client(AppID) response = client.query(input()) # Get the last item of the generator res.results result = None for result in res.results: pass if result is not None: print(f"The answer is {result.text}".format(result.text))
如果计划仅使用x变量将此程序与简单线性方程式一起使用,则可以执行以下操作:
print("The answer is {}".format(eval(result.text.replace("x = ", ""))))
但是,这不适用于
2x=y+3
之类的输入。