Цель состоит в том, чтобы создать программу для преобразования баллов из системы «0 в 1» в систему «F в A»:
- Если
score >= 0.9
выведет «A» - Если
score >= 0.8
напечатает 'B' - 0,7, C
- 0,6, D
- И любое значение ниже этой точки, выведите F
Это способ построить его, и он работает в программе, но он несколько повторяется:
if scr >= 0.9:
print('A')
elif scr >= 0.8:
print('B')
elif scr >= 0.7:
print('C')
elif scr >= 0.6:
print('D')
else:
print('F')
Я хотел бы знать, есть ли способ построить функцию так что составные утверждения не будут такими же повторяющимися.
Я абсолютный новичок, но будет ли возможно что-то в строках:
def convertgrade(scr, numgrd, ltrgrd):
if scr >= numgrd:
return ltrgrd
if scr < numgrd:
return ltrgrd
возможно?
Намерение здесь состоит в том, чтобы позже мы могли вызвать его, передавая в качестве аргументов только scr, numbergrade и letter grade:
convertgrade(scr, 0.9, 'A')
convertgrade(scr, 0.8, 'B')
convertgrade(scr, 0.7, 'C')
convertgrade(scr, 0.6, 'D')
convertgrade(scr, 0.6, 'F')
Если было бы возможно передать меньше аргументов, было бы быть еще лучше.