다음은 학점을 계산하는 코드입니다. 입력 값이 1 초과나 문자열일 경우 "Bad score"를 출력합니다.
```python
score = input("Enter score: ")
try:
score = float(score)
if score < 0.0 or score > 1.0:
print("Bad score")
elif score >= 0.9:
print("A")
elif score >= 0.8:
print("B")
elif score >= 0.7:
print("C")
elif score >= 0.6:
print("D")
else:
print("F")
except:
print("Bad score")
```
만약 입력한 형식에서 조금만 수정해서 올바르게 출력하려면, 입력 값이 문자열일 때 `isdigit()` 함수를 사용해 숫자인지 아닌지를 판단해볼 수 있습니다.
```python
score = input("Enter score: ")
if score.isdigit():
score = float(score)
if score < 0.0 or score > 1.0:
print("Bad score")
elif score >= 0.9:
print("A")
elif score >= 0.8:
print("B")
elif score >= 0.7:
print("C")
elif score >= 0.6:
print("D")
else:
print("F")
else:
print("Bad score")
```
하지만 이 방법은 입력 값이 소수점을 포함하는 실수일 경우에는 처리할 수 없습니다. 그러므로 입력 값이 실수인지를 체크하기 위해서는 `try-except` 구문을 사용하는 것이 가장 좋은 방법입니다.