Mic*_*ire 2 python attributes python-3.x
我被教授布置的作业困住了。它要求我执行以下操作:
用 Python 编写一个程序,对用户的驾驶执照考试答案进行评分,该考试由 10 道多项选择题组成。
问题 1 到问题的正确答案可以存储在名为 Correct_answers 的列表中,初始值如下:
Correct_answers=['B','D','C','B','C','D','A','B','D','A']
您的程序应提示用户在一行中输入 10 个问题的答案,并用空格分隔。用户按下 Enter 键后,将构建答案列表,实验 #5 会解释如何执行此操作。
如果您愿意,您可以存储列表中的答案,而不是从键盘读取答案。这将节省大量时间,因为您在运行程序时无需输入答案。您应该更改您的答案,但只是为了测试目的。
获得答案列表后,将每个值与正确答案列表进行比较,并记录正确答案的数量。
最后,显示 10 个答案中的正确答案数并显示百分比。因此,如果 5 个答案正确,您应该显示 5 个正确答案,即 50%
另请注意,您必须使用functions()来解决该程序。
这是我的代码:
def read_student():
contents = ()
for x in range (0,10):
data = input('Enter your answers for the 10 questions in a
single line separated by a blank')
contents.append(data)
return contents
def pass_fail(correct_answers, student_answers):
num_correct = 0
for i in range(0, len(correct_answers)):
if correct_answers[i] == student_answers[i]:
num_correct = num_correct + 1
print("You got %d answers correct" % num_correct)
percent_correct = (num_correct / 10 ) * 100
print("The percentage of correct answers is %d" %
percent_correct)
correct_answers = ['B', 'D', 'C', 'B', 'C', 'D', 'A', 'B', 'D', 'A']
student_answers = read_student()
pass_fail(correct_answers, student_answers)
Run Code Online (Sandbox Code Playgroud)
它一直说第 5 行 (contents.append(data)) 有一个 AttributeError: 'tuple' object has no attribute 'append'...如果只是不确定它的含义或如何修复它。任何帮助/资源将不胜感激。谢谢 :)
| 归档时间: |
|
| 查看次数: |
12017 次 |
| 最近记录: |