1. 제어문
- 프로그램의 흐름을 제어하는 문장
- 조건문
- 반복문
2. 조건문
2-1. 비교 연산자
- <, >, <=, >=, ==, !=
- 항상 결과는 bool형으로 반환된다(True, False)
print(10 > 5)
print(10 < 5)
print(10 >= 5)
print(10 <= 5)
print(10 == 5)
print(10 != 5)
>>
True
False
True
False
False
True
2-2. if 문
if 조건식(결과가 True 또는 False가 나오는 문장):
조건식이 True인 경우 실행할 문장
bool1 = True
if bool1:
print('결과는 참입니다') #True면 출력
print('프로그램을 종료합니다')
>>
결과는 참입니다
프로그램을 종료합니다
bool2 = False
if bool2:
print('결과는 참입니다') #False면 건너뜀
print('프로그램을 종료합니다')
>>
프로그램을 종료합니다
age = int(input('나이를 입력하세요: '))
if age > 19:
print('성인입니다')
print('입력한 나이: ', age)
>>
나이를 입력하세요: 5
입력한 나이: 5
age = int(input('나이를 입력하세요: '))
if age > 19:
print('성인입니다')
print('넷플릭스 19+ 를 감상할 수 있습니다') # if문의 범위는 아래 탭치면 계속!
print('입력한 나이: ', age)
>>
나이를 입력하세요: 20
성인입니다
넷플릭스 19+ 를 감상할 수 있습니다
입력한 나이: 20
age = int(input('나이를 입력하세요: '))
if age > 19: print('성인입니다') #한줄로도 쓸 수 있다
print('입력한 나이: ', age)
>>
나이를 입력하세요: 20
성인입니다
입력한 나이: 20
2-3. if ~ else 문
if 조건식(결과가 True 또는 False가 나오는 문장):
조건식이 True인 경우 실행할 문장
...
else:
조건식이 False인 경우 실행할 문장
...
age = int(input('나이를 입력하세요: '))
if age > 19:
print('성인입니다')
else:
print('미성년입니다')
print('입력한 나이: ', age)
>>
나이를 입력하세요: 5
미성년입니다
입력한 나이: 5
age = int(input('나이를 입력하세요: '))
if age > 19:
print('성인입니다')
print('넷플릭스 19+ 감상 가능합니다')
else:
print('미성년입니다')
print('디즈니를 보세요')
print('입력한 나이: ', age)
>>
나이를 입력하세요: 10
미성년입니다
디즈니를 보세요
입력한 나이: 10
2-4. if ~ elif ~ else 문
if 조건식1(결과가 True 또는 False가 나오는 문장):
조건식1이 True인 경우 실행할 문장
...
elif 조건식2:
조건식2가 True인 경우 실행할 문장
...
elif 조건식3:
조건식3이 True인 경우 실행할 문장
...
else:
위의 모든 조건식이 False인 경우 실행할 문장
...
* else는 필수 문장은 아님
age = int(input('나이를 입력하세요: '))
if age > 19: # True인 조건을 실행하면 바로 조건문을 빠져나온다
print('성인입니다')
elif age > 14:
print('청소년입니다')
elif age > 6 :
print('어린이입니다')
elif age > 0:
print('유아입니다')
else:
print('입력을 확인하세요')
print('입력한 나이: ', age)
>>
나이를 입력하세요: 1
유아입니다
입력한 나이: 1
2-5. 산술 연산자
- +, -, *, /, %, // ,**
print(10 + 3)
print(10 - 3)
print(10 * 3)
print(10 / 3)
print(10 % 3)
print(10 // 3)
print(10 ** 3)
>>
13
7
30
3.3333333333333335
1
3
1000
2-6. 삼항 연산자
결과가 True일 떄 실행할 문장 if 조건식 else 결과가 False일 때 실행할 문장
num = int(input('숫자를 입력하세요: '))
if num % 2 == 0:
print('짝수')
else:
print('홀수')
>>
숫자를 입력하세요: 11
홀수
num = int(input('숫자를 입력하세요: '))
print('짝수') if num % 2 == 0 else print('홀수')
>>
숫자를 입력하세요: 11
홀수
문제
- 국어점수, 영어점수, 수학점수를 입력받아 총점, 평균, 학점을 구하는 프로그램을 작성해보자.
- 단, 학점은 평균 기준이며 90점 이상은 A, 80점 이상은 B, 70점 이상은 D, 나머지는 F로 함.
# 문제1
kor, eng, math = input('국어, 영어, 수학 점수를 순서대로 입력하세요: ').split(' ')
total = int(kor) + int(eng) + int(math)
avg = total/3
hak = 'F학점'
if avg >= 90:
hak = 'A학점'
elif avg >= 80:
hak = 'B학점'
elif avg >= 70:
hak = 'C학점'
else:
hak = 'D학점'
print('총점: ', total)
print('평균: ', avg)
print('학점: ', hak)
>>
국어, 영어, 수학 점수를 순서대로 입력하세요: 80 100 80
총점: 260
평균: 86.66666666666667
학점: B학점
문제 2.
- 숫자를 입력 받아 2의 배수인지, 3의 배수인지 아니면 2,3의 배수가 모두 아닌지를 판별하는 프로그램을 작성해보자.
# 문제2
num = int(input('숫자를 입력하세요: '))
if num % 2 == 0:
print('%d 는 2의 배수입니다' % num)
elif num % 3 == 0:
print('%d 는 3의 배수입니다' % num)
else:
print('%d 는 2의 배수도 3의 배수도 아닙니다' % num)
>>
숫자를 입력하세요: 5
5 는 2의 배수도 3의 배수도 아닙니다
# 문제 2 선생님 풀이
num = int(input('숫자를 입력하세요: '))
if num % 2 == 0:
if num % 3 == 0:
print(f'{num}은/는 2와 3의 배수')
else:
print(f'{num}은/는 2의 배수')
elif num % 3 == 0:
print(f'{num}은/는 3의 배수')
else:
print(f'{num}은/는 2와 3의 배수가 아님')
>>
숫자를 입력하세요: 9
9은 3의 배수
한줄로 쓰기!
num = int(input('숫자를 입력하세요: '))
print(f'{num}은/는 2의 배수') if num % 2 == 0 else print(f'{num}은/는 3의 배수') if num % 3 ==0 else print(f'{num}은/는 2,3의 배수가 아님')
>>
숫자를 입력하세요: 5
5은/는 2,3의 배수가 아님
2-7. 논리 연산자(and)
- 양쪽 두 식의 값이 모두 True 인 경우 결과가 True가 되는 연산자
AB결과
True | True | True |
True | False | False |
False | True | False |
False | False | False |
- 예) 정보처리기사 자격을 취득하기 위해서는 모든 과목을 40점 이상, 평균이 60점 이상이 되어야 함
# 로그인 프로그램 만들기
# 아이디: admin, 비밀번호: 1234
userid = input('아이디를 입력하세요')
userpw = input('비밀번호를 입력하세요')
if userid == 'admin' and userpw == '1234':
print('로그인 되었습니다')
else:
print('아이디 또는 비밀번호를 확인하세요')
>>
아이디를 입력하세요nini
비밀번호를 입력하세요1234
아이디 또는 비밀번호를 확인하세요
2-8. 논리 연산자(or)
- 양쪽 두 식의 값이 하나라도 True인 경우 결과가 True가 되는 연산자
AB결과
True | True | True |
True | False | True |
False | True | True |
False | False | False |
엄마아빠 모셔와! > 엄마만O 아빠만O 둘다O
# 주민등록번호에 의해 성별을 판별하는 프로그램 만들기
# 0010113068518
juminNo = input('주민등록번호 13자리를 - 없이 입력하세요')
if juminNo[6] == '1' or juminNo[6] == '3' or juminNo[6] == '5' or juminNo[6] == '7' or juminNo[6] == '9':
print('남자')
else:
print('여자')
>>
주민등록번호 13자리를 - 없이 입력하세요0010112909765
여자
2-9. 논리연산자(not)
- bool의 값을 반대로 변경해주는 연산자
bool1 = True
if bool1:
print('결과는 참입니다')
else:
print('결과는 거짓입니다')
>>
결과는 참입니다
bool1 = True
if not bool1:
print('결과는 참입니다')
else:
print('결과는 거짓입니다')
>>
결과는 거짓입니다
'KDT 수업 > Python' 카테고리의 다른 글
[파이썬] 10. 딕셔너리 (0) | 2023.03.09 |
---|---|
[파이썬] 09. 제어문(반복문) (0) | 2023.03.07 |
[파이썬] 07. 튜플(Tuple) (0) | 2023.03.07 |
[파이썬] 06. 리스트(list) (0) | 2023.03.06 |
[파이썬] 05. 문자열 다루기 (0) | 2023.03.06 |