首页 > 解决方案 > 如何输入公式并得到结果?

问题描述

我要做的是输入一个公式,比如 1+1,然后打印:问题 n 的答案是:(公式的答案)。对于 1+1,它应该打印:问题 1 的答案是:2 但是我得到的是,当我输入 1+1 时,它会打印:问题 1 的答案是:'1+1'

def prefix():
    typein=int(input("How many questions do you want to ask:"))
    number=1
    while number<typein+1:
        a=input("Question %r you want to ask"%(number))
        print(a)
        print("The Answer of Question %r is: %r" %(number,a))
        number+=1
prefix()

当我添加

print(a)

a=input("Question %r you want to ask"%(number))

它表明a是1 + 1,而不是2。那么我怎样才能让a成为公式的答案而不是公式本身呢?

- - - - - - - - - - - - - 编辑 - - - - - - - - - - - -

它要求人们输入一个 int 和一些公式。我们为代码的第一部分输入一个 int 是没有问题的。但是对于代码的第二部分,它要求输入公式,它就出错了。

标签: python

解决方案


感谢答案。我知道现在发生了什么,就像问题一样: 评估字符串中的数学表达式

所以我只需要添加一个 eval()

def prefix():
typein=int(input("How many questions do you want to ask:"))
number=1
while number<typein+1:
    a=eval(input("Question %r you want to ask"%(number)))
    print("The Answer of Question %r is: %r" %(number,a))
    number+=1
prefix()

有用! 在此处输入图像描述


推荐阅读