2017-05-01 12 views
-5

입력이 숫자가 아닌 경우 오류 메시지를 추가하려고합니다. 내가 try/except 지금 if/else을하려고 시도했지만 모두가 활성화되지 않는잡기 오류를 제외하고 시도하십시오.

첫번째는 등급을 계산 (사용자가 "10 %"를 입력하면 예를 들어, 내 오류 메시지 대 오류 출력이 있습니다) 비율 입력에 따라 두 번째는 임금을 계산하기로되어 있습니다. 포맷에 대한

grade=eval(input("Enter Score:")) 
try: 
    if(grade<0 or grade>1): 
     print("Bad Score") 
    elif(grade>=0.9): 
     print("A") 
    elif(grade<=0.9 and grade>=0.8): 
     print("B") 
    elif(grade<=0.8 and grade>=0.7): 
     print("C") 
    elif(grade<=0.7 and grade>=0.6): 
     print("D") 
    else: 
     print("F") 
except: 
    print("Bad score") 

Hours=eval(input('Please enter hours worked: ')) 
Rate=eval(input('Please enter pay per hour: ')) 
if(Hours<=40 and Hours>=0): 
    Pay=Hours*Rate 
elif(Hours>40): 
    Pay=((Hours-40)*(1.5*Rate))+(40*Rate) 
    print('Your pay should be $',Pay) 
else: 
    print('Error. Please enter a Numeric Value') 

편집 됨 ... 코드는 원래의 게시물에 정확하지만 잘못된 들여 쓰기를 생성, 코드 회색 상자를 만들 들여했다.

다시 한번 감사드립니다!

+1

[들여 쓰기] (http://stackoverflow.com/posts/43722313/edit). 코드가 지금 실행되지 않습니다. – khelwood

+1

http://stackoverflow.com/q/23294658/3001761과 같은 것을 원하지만 [맨손으로 사용하지 마십시오] (http://blog.codekills.net/2011/09/29/) 악의 - of - except - /). – jonrsharpe

+2

@jonrsharpe Nor'eval' .. – DeepSpace

답변

-1

나쁜 침략! 시도하고 거기에 자신의 라인에 가야한다. 좋아요 :

grade=eval(input("Enter Score:")) 
try: 
    if(grade<0 or grade>1): 
    print("Bad Score") 
    elif(grade>=0.9): 
    print("A") 
    elif(grade<=0.9 and grade>=0.8): 
    print("B") 
    elif(grade<=0.8 and grade>=0.7): 
    print("C") 
    elif(grade<=0.7 and grade>=0.6): 
    print("D") 
    else: 
    print("F") 
except: 
print("Bad score") 

Hours=eval(input('Please enter hours worked: ')) 
Rate=eval(input('Please enter pay per hour: ')) 
if(Hours<=40 and Hours>=0): 
    Pay=Hours*Rate 
elif(Hours>40): 
    Pay=((Hours-40)*(1.5*Rate))+(40*Rate) 
    print('Your pay should be $',Pay) 
else: 
    print('Error. Please enter a Numeric Value')