bool타입을 리턴하는 조건을 전제해놓고 프로그램의 흐름을 제어하는 제어문의 한 종류
1. if문
전제 조건이 참(True)일 때 실행, 거짓(False)일 때 무시되는 기능
if 조건 :
실행할 코드
if True:
print('if문 집입하면 보임')
print('프로그램을 종료합니다')
<결과 콘솔>
if문 집입하면 보임
프로그램을 종료합니다
if False:
print('if문 집입하면 보임')
print('프로그램을 종료합니다')
<결과 콘솔>
프로그램을 종료합니다
True / False 응용 버전
if 'text':
print('if문 집입하면 보임')
print('프로그램을 종료합니다')
<결과 콘솔>
결과는 참입니다
프로그램을 종료합니다
if '':
print('if문 집입하면 보임')
print('프로그램을 종료합니다')
<결과 콘솔>
프로그램을 종료합니다
2. else문
else는 위 if, elif에 아무것도 진입하지 못했을 때 받아주는 어머니와 같은 존재다.
3. elif문
타 언어의 else if의 약어로 elif라는 이름으로 작명됨
최초 조건인 if문에서 진입하지 못하면 2차적인 조건을 제시하는 역할 (쉽게 말해, 최초 조건 이후 추가 조건들은 다 elif)
수업 과제
# id 'apple' 비밀번호 '1234'를 전제로 로그인 구현
id = input('아이디를 입력해주세요')
pw = input('암호를 입력해주세요')
if id == 'apple' and pw == '1234':
print('로그인 성공!')
else:
print('아이디 또는 비밀번호를 확인해주세요.')
# 주민등록번호를 입력받아 성별을 판별
# 입력양식 : 970000-1234244
# 남자 : 1,3,5,7,9 여자 : 2,4,6,8,0
residentNum = input('주민등록번호를 입력해주세요. 000000-0000000 형식')
genderNum = int(residentNum.split('-')[1][0])
if genderNum % 2 == 0:
print('여자')
else:
print('남자')
<결과 콘솔>
주민등록번호를 입력해주세요. 000000-0000000 형식 000000-1234567
남자
# 국어, 영어, 수학점수를 입력받아 총점, 평균, 학점을 구하는 프로그램
# 90점이상 A, 80점이상 B, 70점이상 C, 60점이상 D, 나머지 F
kor, eng, math = input('국어 수학 영어 점수를 형식대로 입력해주세요. 국어 수학 영어 ').split()
total = int(kor) + int(eng) + int(math)
avg = total / 3
if avg >= 90 :
print(f'{avg} A학점입니다.')
elif avg >= 80 :
print(f'{avg} B학점입니다.')
elif avg >= 70 :
print(f'{avg} C학점입니다.')
elif avg >= 60 :
print(f'{avg} D학점입니다.')
else :
print(f'{avg} F학점입니다.')
*format으로 평균 표기하기
kor, eng, math = input('국어 수학 영어 점수를 형식대로 입력해주세요. 국어 수학 영어 ').split()
total = int(kor) + int(eng) + int(math)
avg = total / 3
print('평균 {:.2f}'.format(avg))
<결과 콘솔>
국어 수학 영어 점수를 형식대로 입력해주세요. 국어 수학 영어 82 93 100
평균 91.67
4. 조건부 표현식 (Conditional Expression)
참일 때 값 if 조건 else 거짓일 때 값
num = int(input('숫자를 입력해주세요.'))
# if문 사용시
if num % 2 == 0:
print('짝수')
else:
print('홀수')
# 조건부 표현식
print('짝수') if num % 2 == 0 else print('홀수')
다른 언어에 삼항연산자와 비슷하면서도 조금 다른 느낌인 것 같다.
단, 복잡한 조건인 경우 너무 길어지므로 조건부 표현식은 간단한 조건에만 사용한다.
'Python > 개요 및 문법' 카테고리의 다른 글
컬렉션과 반복문 (feat.컴프리핸션) (0) | 2024.09.26 |
---|---|
제어문 - 반복문 (0) | 2024.09.25 |
파이썬 연산자 (0) | 2024.09.24 |
컬렉션 타입 - 딕셔너리 (0) | 2024.09.24 |
컬렉션 타입 - 세트 (0) | 2024.09.24 |