ValueError: invalid literal for int() with base 10 How to fix error
ValueError: invalid literal for int() with base 10 How to fix error
import random
import operator
op = {"+":operator.add,
"-":operator.sub,
"*":operator.mul}
num1 = random.randint(0,10)
num2 = random.randint(0,10)
ops = random.choice(list(op.keys()))
print (num1 + int(ops) + num2)
我正在尝试进行随机数学问题测验,但我无法弄清楚为什么我总是收到错误消息:
Traceback (most recent call last):
File "N:/Computer science/A453/Test.py", line 12, in <module>
print (num1 + int(ops) + num2)
ValueError: invalid literal for int() with base 10: '-'
>>> ================================
尝试在 num1 和 num2 上强制使用字符串。由于您正在使用 + 进行打印,因此您应该使用字符串进行操作。
print (str(num1) + ops + str(num2))
import random
import operator
op = {"+":operator.add,
"-":operator.sub,
"*":operator.mul}
num1 = random.randint(0,10)
num2 = random.randint(0,10)
ops = random.choice(list(op.keys()))
print (num1 + int(ops) + num2)
我正在尝试进行随机数学问题测验,但我无法弄清楚为什么我总是收到错误消息:
Traceback (most recent call last):
File "N:/Computer science/A453/Test.py", line 12, in <module>
print (num1 + int(ops) + num2)
ValueError: invalid literal for int() with base 10: '-'
>>> ================================
尝试在 num1 和 num2 上强制使用字符串。由于您正在使用 + 进行打印,因此您应该使用字符串进行操作。
print (str(num1) + ops + str(num2))