프로그래머스 파이썬 입문_13차시 논리연산과 if문 더 알아보기

리냥·2022년 5월 31일
0

프로그래머스 파이썬 입문_13차시 논리연산과 if문 더 알아보기


1-1. 논리연산 더 알아보기

  • 단락평가
  • 논리연산에서 코드의 앞만 보고 값을 정할 수 있는 경우 뒤는 보지 않고 값을 결정
  • 복잡한 코드를 단순하게 하는 방식

2-1. bool값과 논리연산

  • true, false
  • 숫자 0을 제외한 모든 수 - true
  • 빈 딕셔너리, 빈 리스트를 제외한 모든 딕셔너리, 리스트 - true
  • 아무 값도 없다는 의미인 None - false
  • 빈문자열을 제외한 모든 문자열 - true

2-2. bool값과 논리연산 실습하기

예제1

  • 문제
다음 코드를 실행해서 어느 경우 if문 안의 코드가 실행되는지 확인해 보세요.
  • 코드
if []:
    print("[]은 True입니다.")

if [1, 2, 3]:
    print("[1,2,3]은/는 True입니다.")

if {}:
    print("{}은 True입니다.")

if {'abc': 1}:
    print("{'abc':1}은 True입니다.")

if 0:
    print("0은/는 True입니다.")

if 1:
    print("1은 True입니다.")
  • tip
true와 false 논리연산은 아래와 같이 이루어 질 수도 있습니다.

구분	False	True
숫자	숫자 0	숫자 0을 제외한 모든 수
문자열	빈 문자열('')	빈 문자열을 제외한 모든 문자열
리스트	빈 리스트([])	빈 리스트를 제외한 모든 리스트
딕셔너리	빈 딕셔너리({})	빈 딕셔너리를 제외한 모든 딕셔너리
기타	None 오브젝트	

예를 들어,
bool(0)    #False
bool(3.3)  #True
bool([])    #False
bool(None)    #False

예제2

  • 문제
or연산의 결과는 앞의 값이 True이면 앞의 값을, 앞의 값이 False이면 뒤의 값을 따릅니다. 다음 코드를 실행해서 각각 a와 b에 어떤 값이 들어가는지 확인해 보세요.

예를 들어,

a = True or 1      #True   앞의 값이 True입니다.
b = False or 0     #0      앞의 값이 False이므로 뒤의 값을 따릅니다.
c = 0 or False     #False  앞의 값이 0이므로 False입니다. 따라서 뒤의 값인 False를 따릅니다.
d = 1 or False     #1      앞의 값이 1이므로 True입니다.
  • 코드
a = 1 or 10    # 1의 bool 값은 True입니다.
b = 0 or 10    # 0의 bool 값은 False입니다.


print("a:{}, b:{}".format(a, b))

profile
안녕하세요. 일로 인해 잠시 쉽니다 :)

0개의 댓글