• Home
  • About
    • Ryureka Moment photo

      Ryureka

      Sin Prisa, Sin Pausa

    • About Me
    • Facebook
    • Github
    • Youtube
  • Projects
  • Posts
    • Posts
    • ProblemSolvings
    • Tags
    • Blog
    • TIL
    • Examples
  • ProblemSolving
    • ProblemSolving
    • BruteForce
    • DFS
    • DP
    • Optimization
  • FrontEnd
    • FrontEnd
    • HTML
  • BackEnd
    • BackEnd
    • Spring
    • Node.js
    • DataBase
      • MySQL
  • Programming
    • Programming
    • Java
    • Python
  • ComputerScience
    • DataStructure
    • Algorithm

[파이썬 기초 문법] 7장. True, False 그리고 if 와 그 형제들

20 Jun 2019

Reading time ~4 minutes

이 포스트는 윤성우님의 저서 열혈 파이썬 기초편을 기반으로 작성한 글입니다.
  • 윤성우 열혈 파이썬 기초편
    • 7장.True, False 그리고 if 와 그 형제들
      • 1.참과 거짓을 의미하는 값
      • 2.소스파일에 main 함수 만들기
      • 3.if문: 조건이 맞으면 실행을 해라.
      • 4.if ~ else문:이쪽 길! 아니면 저쪽 길!
      • 5.if ~ elif ~ else문: 여러 길 중에서 하나의 길만 선택!
      • 6.True 또는 False를 반환하는 연산들
      • 7.리스트와 문자열을 대상으로도 동작하는 >=, <=, ==, !=
      • 8.True 또는 False로 답하는 함수들
      • 9.in, not in
      • 10.수(Number)를 True와 False로 인식하는 방식

윤성우 열혈 파이썬 기초편

7장.True, False 그리고 if 와 그 형제들

1.참과 거짓을 의미하는 값

>>> True     # True는 그 단어의 의미처럼 '참'을 뜻한다.
True
>>> False     # False는 그 단어의 의미처럼 '거짓'을 뜻한다.
False
>>> 3 > 10 	# 3이 10보다 크니?
False
>>> 3 < 10 	# 3이 10보다 작으니?
True
>>> r = 3 < 10     # < 연산의 결과인 True가 변수 r에 저장된다.
>>> r
True
>>> type(True)
"<class 'bool'>"
>>> type(False)
"<class 'bool'>"

따라서 자료형을 아래와 같이 분류할 수 있다.

int형 데이터 		ex) 3, 5, 7, 9
float형 데이터 		ex) 2.2, 4.4, 6.6, 8.8
리스트형 데이터 		ex) [3, 5, 7, 9], [2.2, 4.4, 6.6, 8.8]
스트링형 데이터 		ex) "I am a boy", 'You are a girl'
부울형 데이터 		ex) True, False

2.소스파일에 main 함수 만들기

# main.py

def main(): 	# main 함수의 정의
	print("Simple Frame")

main() 		# main 함수의 호출을 명령함

3.if문: 조건이 맞으면 실행을 해라.

# if_positive.py

def main(): 	 # main 함수의 정의
	num = int(input("정수 입력: "))
	if num > 0:
		print("양의 정수입니다.")
  # if num > 0: print("양의 정수입니다.") 한 줄이면 이렇게도 가능
main() 		# 위의 main 함수를 실행해라!

'''
정수 입력: 2
양의 정수입니다.
'''

리스트의 덧셈 및 곱셈 연산결과는 위와 같다.

4.if ~ else문:이쪽 길! 아니면 저쪽 길!

if_else.py

def main():
	num = int(input("정수 입력: "))
	if num > 0:
		print("0보다 큰 수입니다.")
	else:
		print("0보다 크지 않은 수입니다.")

main()

'''
정수 입력: -7
0보다 크지 않은 수입니다.
'''

5.if ~ elif ~ else문: 여러 길 중에서 하나의 길만 선택!

if_elif_else.py

def main():
	num = int(input("정수 입력: "))

	if num > 0:
		print("0보다 큰 수입니다.")
	elif num < 0:
		print("0보다 작은 수입니다.")
	else:
		print("0으로 판단이 됩니다.")

main()

'''
정수 입력: 0
0으로 판단이 됩니다.
'''

6.True 또는 False를 반환하는 연산들

A > Z 	 `A가 Z보다 크면 True, 크지 않으면 False 반환`
A < Z 	 `A가 Z보다 작으면 True, 작지 않으면 False 반환`

A >= Z 	  `A가 Z보다 크거나 같으면 True, 그렇지 않으면 False 반환`
A <= Z 	  `A가 Z보다 작거나 같으면 True, 그렇지 않으면 False 반환`
A == Z 	  `A와 Z가 같으면 True, 같지 않으면 False 반환`
A != Z 	  `A와 Z가 같지 않으면 True, 같으면 False 반환`
>>> True and True
True
>>> True and False
False

>>> True or False
True
>>> False or False
False

>>> not False
True
>>> not True
False

and 연산을 이용한 간결하게 작성할 수 있다.

if num % 2 == 0:
	if num % 3 == 0:
		print("OK!")
	else:
		print("NO!")
else:
	print("NO!")
if (num % 2) == 0 and (num % 3) == 0:
	print("OK!")
else:
	print("NO!")

7.리스트와 문자열을 대상으로도 동작하는 >=, <=, ==, !=

>>> 'abc' == 'abc' 	# 두 문자열이 같은가?
True
>>> 'abc' != 'abc' 	# 두 문자열이 다른가?
False

>>> [1, 2, 3] == [1, 2] 	  # 두 리스트가 같은가?
False
>>> [1, 2, 3] != [1, 2] 	  # 두 리스트가 다른가?
True
>>> st1 = "123"
>>> st2 = "OneTwoThree"
>>> st1.isdigit() 		# st1은 숫자로만 이뤄져 있나요?
True
>>> st2.isdigit() 		# st2는 숫자로만 이뤄져 있나요?
False

8.True 또는 False로 답하는 함수들

>>> st1 = "123"
>>> st2 = "OneTwoThree"
>>> st1.isalpha()
False
>>> st2.isalpha()
True
>>> str = "Supersprint"
>>> str.startswith("Super")     # 문자열이 'Super'로 시작하는가?
True
>>> str.endswith("int")     # 문자열이 'int'로 끝나는가?
True
# is_phone_num.py
def main():
	pnum = input("스마트폰 번호 입력: ")
	if pnum.isdigit() and pnum.startswith("010"):
		print("정상적인 입력입니다.")
	else:
		print("정상적이지 않은 입력입니다.")

main()

'''
스마트폰 번호 입력: 010-7777-9999
정상적이지 않은 입력입니다.

스마트폰 번호 입력: 01077779999
정상적인 입력입니다.
'''

9.in, not in

>>> s = "Tomato spaghetti"
>>> if s.find("ghe") != -1:
        print("있습니다.")
    else:
        print("없습니다.")
'''
있습니다.
'''
>>> if "ghe" in s:
        print("있습니다.")
    else:
        print("없습니다.")

'''
있습니다.
'''
>>> 3 in [1, 2, 3]     # 리스트 [1, 2, 3] 안에 3이 있는가?
True
>>> 4 in [1, 2, 3]     # 리스트 [1, 2, 3] 안에 4가 있는가?
False
>>> 3 not in [1, 2, 3]
False
>>> 4 not in [1, 2, 3]
True
>>> "he" not in "hello"
False
>>> "oo" not in "hello"
True

10.수(Number)를 True와 False로 인식하는 방식

>>> num = 1
>>> if num:
        print("0 아닙니다.")
'''
0 아닙니다.
'''

0 오는 경우 False가 온 것으로 간주한다.

0 아닌 수가 오는 경우 True가 온 것으로 간주한다.

>>> num = 1
>>> if num != 0:
        print("num은 0 아닙니다.")
'''
num은 0 아닙니다.
'''
>>> num = 1
>>> if num:
        print("num은 0 아닙니다.")
'''
num은 0 아닙니다.
'''
>>> bool(5)
True
>>> bool("what")
True
>>> bool("")
False
>>> bool([1, 2, 3])
True
>>> bool([])
False


Python Share