2014-11-04 6 views
-5

빠른 질문 나는 어디에서 잘못되고 있는지 궁금 해서요. 저는 현재 파이썬을 연구 중입니다. 마크를 매개 변수로 사용하여이 간단한 학년 계산기 기능에서 잘못되어 가고 있습니다.If in function Python

여러분이 올바른 방향으로 나를 지적 할 수 있는지 궁금합니다. 고마워요 :)

def calculateGrade(mark): 
    if mark >=16: 
     return("A") 
    elif mark >= 12 and mark <16: 
     return("B") 
    elif mark >8 and mark <11: 
     return("C") 
    elif mark <8: 
     return("F") 
+5

무엇이 문제입니까? – MattDMo

+3

'mark '는 분명히 숫자가 아닌 문자열입니까? (또한 'mark == 8'또는'11 <= mark <12'를 처리하지 마십시오.) – jonrsharpe

+1

입력 내용과 예상 출력을 명시하십시오 – resilva87

답변

1

먼저 할 일은 "마크"가 정수인지 확인하는 것입니다. 그런 다음 이미 확인 된 값에 대한 중복 검사를 제거합니다. 그런 다음 관계없는 괄호를 제거 할 것입니다 (감사합니다, Matthias).

def calculateGrade(mark): 
    mark = int(mark) 
    if mark >=16: 
     return "A" 
    elif mark >= 12: 
     return "B" 
    elif mark >8: 
     return "C" 
    else: 
     return "F" 
+2

그리고 나서 불필요한 괄호를 제거합니다. 'return ("F")'는 필요 없으며'return "F"'를 사용할 수 있습니다. – Matthias

+0

정말 대단합니다. 나는 처음부터 시작하는 법을 배웠습니다. 고마워요. 감사합니다. – Noskes

+0

@NoskesL : 답변으로 도움이 되었다면 가능한 한 빨리 수락했음을 표시하십시오. – GingerPlusPlus