我需要创建一个生成10个随机数学问题的python程序。它应该生成两个随机数和一个运算符。到目前为止,这是我的代码:
from random import *
score = 0
def math():
num1 = randint(1, 10)
num2 = randint(1, 10)
symbol = randint(1,3)
if symbol == 1:
question = input("What is " + str(num1) + "+" + str(num2) + "?")
answer = num1 + num2
if question == answer:
score = score + 1
elif symbol == 2:
question = input("What is " + str(num1) + "-" + str(num2) + "?")
answer = num1 - num2
if question == answer:
score = score + 1
elif symbol == 3:
question = input("What is " + str(num1) + "*" + str(num2) + "?")
answer = num1 * num2
if question == answer:
score = score + 1
for i in range(10):
math()
print("Your score was " + str(score))
代码有效并且没有语法错误,但它将所有问题都标记为错误。
提前致谢。
答案 0 :(得分:0)
假设您使用的是Python 3,input
会返回一个字符串。因此,将变量question
转换为int
(或适合您的任何数值数据类型)。即更改以下所有实例:
question = input(...)
为:
question = int(input(...))
此外,使用global score
开始您的功能。
答案 1 :(得分:0)
按照上面的建议将int()放在input()周围,它会产生另一个错误,即你在分数得分时,得分不是函数中的变量。
为避免这种情况,请添加
global score
在分配之前,在函数内。例如:
...
def math()
global score
num1 = randint(1,10)
...
答案 2 :(得分:0)
在放了全局分数之后,最终分数仍然为零。
import { ApolloProvider } from '@apollo/react-hooks';
import ApolloClient from 'apollo-boost';
export const createApolloClient = () => {
return new ApolloClient({
uri: 'http://localhost/headless-cms/admin/',
fetchOptions: {
mode: 'no-cors',
},
});
}
export default CreateApolloClient;