Python随机数学&x27;s测试生成器程序,需要调整吗

Python随机数学&x27;s测试生成器程序,需要调整吗,python,windows,file,math,Python,Windows,File,Math,我试图改变我的代码中的三件事 使“答案”匹配同一组随机数。随机数用于“问题” 为用户提供一个选项,以选择用于测验的特定运算符,而不是随机运算符 op = input("Please enter your operator (+, -, /, or *): ") 对于减法运算符,请确保第一个操作数大于第二个操作数,以便程序不会给出否定答案 if operation == "-" and rand < rand2: rand, rand2 = rand2, rand 任何答案都将不

我试图改变我的代码中的三件事

  • 使“答案”匹配同一组随机数。随机数用于“问题”

  • 为用户提供一个选项,以选择用于测验的特定运算符,而不是随机运算符

  • op = input("Please enter your operator (+, -, /, or *): ")
    
  • 对于减法运算符,请确保第一个操作数大于第二个操作数,以便程序不会给出否定答案

  • if operation == "-" and rand < rand2:
        rand, rand2 = rand2, rand
    
    任何答案都将不胜感激。 这是我的密码:

    import random
    
    print("Welcome to the maths quiz creator!")
    CLASS = input("Please enter the class name: ")
    NAME = input("Please enter your name: ")
    NoofQ = int(input("How many questions for the quiz? "))
    
    我对Python相当陌生,使用Pycharm程序编写。
    谢谢。

    1使“答案”匹配同一组随机数。随机数用于“问题”

    您可以先创建一个列表,创建数字,并将其用于问答

    numbers = [(random.randint(1, 12), random.randint(1,12)) for _ in range(NoofQ)]
    
    然后在问答中使用它:

    for question_num in range(1,NoofQ +1): #i would prefer that question_num starts at 0
        ops = ['*','/','+','-']
        rand, rand2 = numbers[question_num-1] 
    
    2为用户提供一个选项,以选择用于测验的特定运算符,而不是随机运算符

    op = input("Please enter your operator (+, -, /, or *): ")
    
    3对于减法运算符,请确保第一个操作数大于第二个操作数,以便程序不会给出否定答案

    if operation == "-" and rand < rand2:
        rand, rand2 = rand2, rand
    
    if operation==“-”且rand
    为确保正减法结果,您可以使用。或者您可以先输入值:

    answer = abs(4-3)
    small, big = sorted((4,3))
    answer = big - small. 
    
    您可以创建一个
    xyz_quick.txt
    文件,其中包含您需要的答案代码的所有信息。阅读测验文件,对于每个问题,使用拆分和剥离的方法,直到你得到数学答案


    欢迎来到SO。请花时间阅读该页面上的其他链接。为确保正减法结果,您可以使用。或者您可以先输入值:
    small,big=sorted((4,3));大-小
    。是否将问题和答案代码保存在单独的文件中?是的,问题和答案将保存在单独的文件中。第一个文件是随机问题,答案为空白,第二个文件是相同的随机问题,包括答案。谢谢你的回答,我设法得到了与“问题”和“答案”相同的数字。但是现在“答案”操作符与“问题”操作符不同,使得答案文件中的数学总和不同。有什么想法吗?@Nathan我相信你可以根据我提供给接线员的号码修改代码。这是同样的逻辑。我刚刚完成了,非常感谢@Corentin Limier的帮助。
    >>> question = '1: 6 - 11 = ________'
    >>> question, _ = question.split('=')
    >>> question
    '1: 6 - 11 '
    >>> q_number, q = question.split(':')
    >>> q_number
    '1'
    >>> q
    ' 6 - 11 '
    >>> q = q.strip()
    >>> q
    '6 - 11'
    >>>