首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带参数的函数

带参数的函数
EN

Stack Overflow用户
提问于 2015-02-14 00:11:22
回答 1查看 35关注 0票数 0

我参加这个编程课,我们的任务之一是做一个小测验,并返回正确和错误的答案。所以我已经把它全部编码了,唯一似乎不对的就是我的论点传递。我的成绩总是为零,我希望能得到任何帮助。

这是我的代码:

代码语言:javascript
运行
复制
correctAnswers = 0
wrongAnswers = 0

answer = input("Question 1: 5-3")
if(answer == 2):
    correctAnswers + 1
else:
    wrongAnswers +1

grade(correctAnswers, wrongAnswers)

grade(right, wrong):
    right - wrong
    print("You have a total of " + str(right) + " correct answers")

这只是其中的一个片段,但能让你明白这个想法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-14 00:12:46

您正在将字符串与和int进行比较:

代码语言:javascript
运行
复制
  int(input("Question 1: 5-3")) # cast to int

你还需要+=,而不仅仅是+ correctAnswers += 1

你可能也想要print(right - wrong)

您也可以将其与字符串:if answer == "2"进行比较,而不是强制转换

"foo"+ "bar"确实会创建一个新的对象,但这是连接,但是当您想要增加一个变量时,您需要使用+=,这是var = var + 1的缩写。

最后,当将字符串转换为int时,确保用户使用while循环输入有效数据,直到用户输入可以转换为int的数据并使用try/除了捕获错误的输入,这是一个好主意:

代码语言:javascript
运行
复制
while True:
    try:
        answer = int(input("Question 1: 5-3"))
        break
    except ValueError:
        print("Invalid input")
if answer == 2:
    correctAnswers += 1
else:
    wrongAnswers += 1
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28510872

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档