首页 > 解决方案 > 平均成绩和“如果”

问题描述

我之前的问题已经结束,所以我用提供的代码制作了一个新问题。

assignments = 5

x = [int(input('Ocena z cwiczenia {}: '.format(i+1))) for i in     range(assignments)]


finalGrade = int(input('Ocena z kolokwium: '))

average_assignment_grade = (sum(x) + finalGrade) / 6

print()
print('Średnia')


for number in range(1):
    print(format(average_assignment_grade, '.1f'))

A.append(average_assignment_grade);



grades_sum = sum(A)
grades_average = grades_sum / 6
if grades_sum < 3 print ("Przedmiot nie zaliczony")
else print("Przedmiot zaliczony")

我得到的错误:

File "<ipython-input-43-fe40b7e5825c>", line 23
if grades_sum < 3 print ("Przedmiot nie zaliczony")

所以这是代码。如您所见,我希望它显示学生是否通过(它是波兰语,“Przedmiot nie zaliczony”-未通过,“Przedmiot zaliczony”-通过)但我收到了无效的语法错误。我查看了我的笔记,我按照他们说的做了一切,但显然出了点问题,我不知道是什么。你现在能帮忙吗?

标签: pythonpython-3.xanacondaaverage

解决方案


@joostblack 谢谢你,你帮了我很多。我知道我缺乏基础知识。我想更进一步,创建一个“x”可以是什么的列表(仅限 2、3、4 或 5)。列表(2、3、4、5)

assignments = 5
A = 5

list = [2, 3, 4, 5]
x = [int(input('Ocena z cwiczenia {}: '.format(i+1))) for i in range(assignments)]

if x in list:
print("ok")
else:
print("no ok")

它显示了这个错误:

File "C:\Users\Wojtek\Desktop\untitled2.py", line 9, in <module>
list(2, 3, 4, 5)

TypeError: list expected at most 1 argument, got 4

我不知道这个列表有什么问题以及为什么它说它只能包含 1 个参数。问题是如何使列表能够有超过 1 个参数,如果书面参数不在列表中,它将显示“不可以”。


推荐阅读