python练习题,求解答

自动出10道题并判分 if_auto_score.py
随机产生两个[1,10]内的整数和“+-*/”符号中的一个
输出表达式让用户输入其计算的答案
对结果进行判断,并输出判断的结果
关于随机数
import random
random.randint(1, 9)
random.random( ) 0-1之间的数,不含1


import random
op = ['+','-','*','/']
t = 0
for i in range(10):
    n1 = random.randint(1,10)
    n2 = random.randint(1, 10)
    o = random.randint(0,3)
    fr = "{}{}{}".format(n1,op[o],n2)
    inp = input("{} = ".format(fr))
    if round(eval(fr),2) == eval(inp):
        print("正确")
        t += 1
    else:
        print("错误")

print("正确{}道".format(t))

以加减为例。


import random

def random_generate(min, max):
    # 传入最大最小值,随机生成加法或减法式,返回问题与答案。
    a = random.randint(min, max)
    b = random.randint(min, max)
    if a > max/2:
        # 加法
        answer = a + b
        question = "{}+{}=".format(a, b)
        print(question)
        num = int(input("请输入正确的的答案:"))
        if int(num) != answer:
            print("输入错误!",question,answer)
        else:
            print("输入正确!",question,answer)
    else:
        # 减法
        while b >= a:
            # 防止减出负数
            b = random.randint(min, max)
        answer = a - b
        question = "{}-{}=".format(a, b)
        print(question)
        num = int(input("请输入正确的的答案:"))
        if int(num) != answer:
            print("输入错误!", question, answer)
        else:
            print("输入正确!", question, answer)
    return question,answer

random_generate(1,9)

img