핵심 파이썬 기초 프로그래밍(2)

일상의 비결·2021년 10월 27일
0
post-thumbnail

본 포스팅은 elice2021 NIPA AI 온라인 교육을 듣고 개인 공부를 위해 정리한 것입니다.

2. 특정 조건에 따라 작업을 수행하는 조건문

1) 논리 자료형과 비교 연산

논리 자료형

True of Flase를 나타내는 자료형

비교 연산자

숫자나 문자의 값을 비교하는 연산자, 주어진 진술이 참이면 True, 거짓이면 False

print(3 < 5) # True
print(7 == 5 ) # False
print(2 >= 10) # False
print(5 != 10) # True
  • 비교 연산자의 종류
기호의미
==같다
!=다르다
>왼쪽이 더 크다
<오른쪽이 더 크다
>=왼쪽이 같거나 크다
<=오른쪽이 같거나 크다

실습✍ 비교 연산자 활용하기

ans1 = 3 != 4 # True

ans2 = 3 > 4 # False

ans3 = 5 <= 7 # True

# 위의 세 변수를 출력해서 True, False 여부를 확인해봅시다.
print(ans1, ans2, ans3)
>>> True False True

2) 논리 자료형을 이용한 연산 : 논리 연산

True, False 밖에 없는 논리 자료형은 우리가 알고 있는 산술 연산이 아닌 새로운 연산이 필요하다. 바로 AND 와 OR 등으로 흔히 알려진 논리 연산이다.

1. AND

각 논리가 모두 True 여야 True!

print(3==3 and 4 <=5 and 6>2) 
# 세 항이 모두 True 이므로, True!
>>> True

2. OR

논리들 중 하나라도 True가 존재하면 True!

print(3==4 or 4<=5 or 6<2) 
# 4<=5 가 True 이므로, True가 존재하기에 True!
>>> True

3. NOT

논리값을 뒤집는다! True → False 로, False → True

print(not 3==4) 
# False 에 Not 을 붙였으므로 True!
>>> True

실습✍ 논리 연산자 활용하기

stat1 = 3==3 and 2<4 and 4!=5 # True and True and True

stat2 = 4>=6 or "apple"=="Apple" or 4>5 # False or False or False

stat3 = not 2>=3 # not False

# 위의 세 변수를 한 문장으로 출력해서 True, False 여부를 확인해봅시다.
print(stat1, stat2, stat3)
>>> True False True

3) 조건문

어떠한 특정 조건에 따라서 실행되는 명령이 달라지는 구문

if 문

만약(if) i == 1(조건)이면 i를 출력(명령)하라!
조건이 True일 때 명령을 실행한다

if 조건:
    <수행할 명령>
    <수행할 명령>
    ...

if string[0] == "a":
    count = count + 1
    print(string)

💎 중요 💎
: 놓치지 말고 넣어주자!
if문에 들어갈 명령들은 같은 들여쓰기(띄어쓰기)로 구분한다.

if-else 문

if 문에서 조건을 만족하지 못하면?
만약 i == 1 하면, i를 출력하라! 아니면(else) i + 1를 출력(명령)하라!

if 조건:
    <수행할 명령>
else:
    <수행할 명령>

x = input()

if x in ['a', 'e', 'I', 'o', 'u']:
    print("모음입니다.")
else:
    print("자음입니다.")

실습✍ 만약 ~라면 if, 아니라면 else!

if-else문을 이용해서 만약 입력받은 수가 홀수면 "(입력받은 수) 홀수입니다."
짝수면 "(입력받은 수) 짝수입니다."를 출력해봅시다.
괄호는 출력하지 않습니다.

# input()을 이용해서 숫자(정수) 입력을 받고, 변수 num에 이를 넣어봅시다.
num = int(input())

if (num % 2) == 0:
    print(num, "짝수입니다.")
else:
    print(num, "홀수입니다.")
    
>>> 5 홀수입니다.

4) 여러가지 조건에 따른 명령 수행

if-elif 문

만약 점수가 90 이상이라면 A를 출력하라
아닌 경우(elif)에 75 이상이라면 B를 출력하라!
else if → elif

if 조건1:
    <수행할 명령>
elif 조건2:
    <수행할 명령>

조건1이 True면 if 문
조건1이 False면서 조건2가 True면 elif문 실행

x = input()

if x % 2 == 0:
    print("2의 배수입니다.")
elif x % 3 == 0:
    print("3의 배수입니다.")

if-elif-else 문

if 조건1:
    do A
elif 조건2:
    do B
elif 조건3:
    do C
. . .
else:
    do X

조건1 True → A 실행
조건1 False and 조건2 True → B 실행
조건1 False and 조건2 False and 조건3 True → C 실행
...
모든 조건이 False → X 실행

실습✍ A는 아니지만 B라면? elif!

  1. 변수 answer에 수 1~50 중 하나를 넣어봅시다.
  2. input을 통해 숫자형으로 입력을 받아서 변수 submit에 저장해봅시다.
  3. if-elif-else문으로 Up-Down Game을 구현해봅시다.
    만약 answer보다 submit이 더 크면 "정답보다 더 큰 수를 입력했습니다."
    만약 answer보다 submit이 더 작으면 "정답보다 더 작은 수를 입력했습니다."
    만약 answer와 submit이 같으면 "정답!" 를 출력합니다.
  • 내 답안
from random import * 

answer = randrange(1,51)
submit = int(input())

if submit > answer:
    print("정답보다 더 큰 수를 입력했습니다.")
elif submit < answer:
    print("정답보다 더 작은 수를 입력했습니다.")
else:
    print("정답!")
  • 강의 답안
answer = 25
submit = int(input())

if submit > answer:
    print("정답보다 더 큰 수를 입력했습니다.")
elif submit == answer:
    print("정답!")
else:
    print("정답보다 더 작은 수를 입력했습니다.")
profile
한 발짝 두 발짝 개발자의 길로

0개의 댓글