들어가며...
질문에 대한 답을 기반으로 작업 수행을 결정하는 문장을 "조건문" 이라고 한다.
파이썬은 조건문으로 IF문을 제공.
if 조건식 :
명령문
명령문
명령문
>>> score = 80
>>> if score >= 60:
print("%d 점" % score)
print("합격입니다.")
>>> 80 점
>>> 합격입니다.
>>> score = 80
>>> if score >= 60: print("합격입니다.") # 이처럼 코드를 짤 수 있다. (한 줄로도 코드를 짤 수 있다니...)
score = 80
if score >=60:
result = "합격입니다."
print(result)
[결과]
합격입니다.
if score >=60: result = "합격입니다."; print(result) # 위 구문과 동일한 코드임
문장의 끝을 표시하는 ;(세미콜론) 생략가능하나 둘 이상의 문장을 한 줄에 기술할 경우 명시적 기술해야 한다!
1 result = "불합격입니다."
2 score = 80
3 if score >=60: # True를 반환
4 result = "합격입니다."
5 print(result)
[결과]
합격입니다.
1 result = "불합격입니다."
2 score = 50
3 if score >=60: # False를 반환
4 result = "합격입니다."
5 print(result) # 초기 result 값을 반환한다.
[결과]
불합격입니다.
if ~ else 문
- 어떤 조건을 만족하는 경우의 명령문과 만족하지 않았을 경우의 명령문을 상호 배타적으로 수행하고자 할 때 사용
if ~ else 문의 기본 문법
if 조건식 :
명령문
명령문
명령문
else 키워드 :
명령문
명령문
명령문
1 score = 80
2 if score >= 60: # True를 반환
3 print("합격입니다.")
4 else:
5 print("불합격입니다.")
[결과]
합격입니다.
1 score = 50
2 if score >= 60: # False를 반환 else 문으로 넘어감
3 print("합격입니다.")
4 else:
5 print("불합격입니다.")
[결과]
불합격입니다.
1 score = 80
2 result = "합격입니다." if score >=60 else "불합격입니다." # score 값에 따라 result의 값을 바꿀 수 있는 코드
3 print(result)
[결과]
합격입니다.
if 조건식:
명령문1
명령문2
elif 조건식2:
명령문3
명령문4
else:
명령문5
명령문6
score = 70
if score >= 90:
grade = "A"
elif 80 <= score < 90:
grade = "B"
elif 70 <= score < 80: # 이 코드라인에서 True 값을 반환
grade = "C"
elif 60 <= score < 70:
grade = "D"
else:
grade = "F"
print("%d 점은 %s 등급입니다." % (score, grade)) # 문자열 포맷팅 결과 출력
[결과]
70점은 C 등급입니다.
score = int(input("점수를 입력하세요:"))
if score >= 90:
grade = "A"
elif 80 <= score < 90: # score 값이 88이기 때문에, 이 코드라인에서 True 값을 반환
grade = "B"
elif 70 <= score < 80:
grade = "C"
elif 60 <= score < 70:
grade = "D"
else:
grade = "F"
print("%d 점은 %s 등급입니다." % (score, grade)) # 문자열 포맷팅 결과 출력
[결과]
점수를 입력하세요: 88
88점은 B 등급입니다.
score = int(input("점수를 입력하세요:"))
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"
elif score >= 70: # 77점이므로 해당 코드라인에서 True 반환
grade = "C"
elif score >= 60:
grade = "D"
else:
grade = "F"
print("%d 점은 %s 등급입니다." % (score, grade))
[결과]
점수를 입력하세요: 77
77점은 C 등급입니다.
[결과1]
첫 번째 숫자를 입력하세요: 2
연산자를 입력하세요 (+, -, *, /): +
두 번째 숫자를 입력하세요: 3
2 + 3 = 5
[결과2]
첫 번째 숫자를 입력하세요: 2
연산자를 입력하세요 (+, -, *, /): #
두 번째 숫자를 입력하세요: 3
'#'은 본 프로그램에서 지원하지 않는 연산자입니다.
- 첫 번째 숫자, 연산자, 두 번째 숫자의 변수를 초기화 한다.
- 세 가지 변수에 대해서 input() 함수를 통해 값을 입력 받는다.
숫자는 int(input()) 함수를, 연산자는 input() 함수를 사용
- 각각의 연산자에 대한 계산문을 작성한다.
%-포맷팅 활용
"나누기" 계산에 대해서는 부동소수점과 그 자릿수를 표현하는 %.2f 방법을 사용한다.
해당 포스팅은 아래의 사이트를 참고하여 작성하였습니다.
SW Expert Academy https://swexpertacademy.com/