我的 Python 程序哪里出错了?

Where's the mistake in my Python program?

我的代码哪里有错误?我找不到他们。我不得不制作一个乘法学习程序,但我现在陷入了困境。

    import random

n = int(input("How many exercises?"))
wrong = 0
abort = False
for k in range(n):
    a = random.randint(2, 13)
    b = random.randint(2, 13)
    help = str(k+1) + ". " + str(a) + " * " + str(b)
    answer = input(help + "=> ")
    if answer == "":
        abort = True
        break
    if answer !=a * b:
        print("Wrong!")
        wrong += 1
    if abort == True:
        print("Noob")
            return
if wrong == 0:
    print("Good")

else:
    print("Hale" ,wrong)

有两个错误,return 不在函数中,此时 vigu 变量没有值,您永远无法到达

如果中止 == 真: 打印("Noob") return

因为在此之前你设置了 abort=True 然后你做了一个 break,

稍微更正了您的代码:

  1. 缩进你的代码;这真的很重要
  2. 不能在函数外使用语句 "return"
  3. 如果要将 "answer" 与 "a * b" 进行比较,则将其转换为 int 或将 a * b 转换为字符串

这是我所做的更正:

import random

n = int(input("How many exercises?"))
wrong = 0
abort = False
for k in range(n):
    a = random.randint(2, 13)
    b = random.randint(2, 13)
    help = str(k+1) + ". " + str(a) + " * " + str(b)
    answer = input(help + "=> ")
    if answer == "":
      abort = True
      break
    if answer != str(a * b):
      print("Wrong!")
      wrong += 1
    if abort == True:
      print("Noob")
if wrong == 0:
    print("Good")

'''Don't know what you wanted to do here
else:
  print("Hale" ,vigu)'''