Метою є створення програми для перетворення балів із системи '0 до 1' в систему 'F до A':
- Якби
score >= 0.9
надрукувати "A" - Якби
score >= 0.8
надрукувати "B" - 0,7, С
- 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 та літери як аргументи:
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')
Якби можна було передавати менше аргументів, було б ще краще.