在代码下面的代码行prod = eval("beg1" "operation" "beg2")
不起作用!如果有人能给我一些帮助,我将不胜感激!你知道吗
def quiz():
global tally
tally = 0
questions = 10
name = input("What is your surname name")
form = input("What is your form")
for i in range(questions):
ops = ['+', '-', '*', '/']
operation = random.choice(ops)
beg1 = random.randint(1, 10)
beg2 = random.randint(1, 10)
prod = eval("beg1" "operation" "beg2")
print (prod)
begAns = input("What is " + str(beg1)+ operation + str(beg2) + "? ")
if int(begAns) == prod:
print("That's right -- well done.\n")
tally += 1
else:
print("No, I'm afraid the answer is ",prod)
print ("Your score was", tally, "out of 10")
如前所述,使用带
+
的字符串连接将operation
变量的值放入eval
的字符串中:否则,程序将尝试
eval
文本字符串"operation"
(就像在python解释器中键入1operation4
)。你知道吗但是,我建议您不要使用} 模块),然后将其应用于两个随机整数:
eval
。相反,创建一个操作符函数列表(来自^{相关问题 更多 >
编程相关推荐