수달이네 기술 블로그

2. 조건문 본문

언어/Python

2. 조건문

슬픈 수달이 2025. 8. 21. 17:29

🔍switch 구문

switch - case로 활용할 수 있는 해당 구문은 한정된 상황(동,서,남,북중 어디로 가는가 등)에서 사용한다.

그러나, Python에서 라이브러리를 통해 구현되긴 하지만 거의 사용하지 않는다.

  • 그 이유는 대체로 if구문으로 변환가능하며,
  • switch문은 if구문으로 다 변환하는 것은 불가하기 때문이다. 
  • 그렇기에 파이썬에선 공식적으로 지원하지 않는것이다.

🔍if 구문

조건식의 결과는 항상 참 혹은 거짓으로 나타낸다.

파이썬의 조건식은 아래와 같이 나타낼 수 있다.

age = 19
if age >= 19:
	print("주류 구매 가능")
else:
	print("주류 구매 불가")
  • 여기서 ' : (콜론) '의 경우, 인터프리터에게 아직 전체문장이 끝나지 않았으므로, 잠시 해석을 미뤄달라는 뜻.
    (c언어에서는 {중괄호}를 활용하지만 파이썬에선 콜론과 들여쓰기를 사용한다.)
  • 위에서 보면 수식에 c언어처럼 (소괄호)를 사용하지 않는 모습을 볼 수 있는데,
    파이썬에선 괄호를 사용하면 노란 줄(warning 표시)가 뜬다.

파이썬에서 조건문에 소괄호를 쓰면..

나머지 조건식의 경우 c언어와 같았다.

a > b a >= b a < b a <= b a == b
a가 b보다 큼 a가 b보다 크거나 같음 a가 b보다 작음 a가 b보다 작거나 같음 a와 b는 같음

🔍boolean Type

c언어와는 다르게 파이썬에선 bool 타입을 True, False로 나타낸다. (c에선 true, false)

즉, 아래와 같이 표현할 수 있다.

flag = False

if flag:
    print("ON!")
else:
    print("OFF!")

🔍들여쓰기

위에서 말했듯이 파이썬에선 들여쓰기가 매우 중요하다.

c언어같이 {중괄호}로 구분되는 것이 아니기 때문에 들여쓰기로 if연산이 끝났는지,

해당 블록이 어떤 if연산에 들어가는 것인지 확인하는 용도로 쓰인다.

   (즉, 같은 들여쓰기 상의 내용들이 한 블럭이다.)

따라서 

grade =int(input("enter grade"))
score = float(input("enter score"))

if grade >= 140:
    if score >= 3.5:
        print("you can graduate!")
    else:
        print("you need better score!")
    print("you need more grade!")

위와 같은 중첩 조건문에서 들여쓰기를 이용해 구분해야만 한다.

더보기

하지만! 중첩 논리연산자도 너무 많이 사용하면 알아보기 힘들기 때문에 조건을 잘 생각해서 최대한 덜 중첩되도록 해야한다.

🔍논리연산자의 구분

c언어에서의 && == 파이썬에서의 and연산자

  • 만약 처음 조건이 거짓이라면 뒤의 조건은 검사하지 않음.(이걸 단축계산이라 한다!)
if a < 10 and a > 5: #a가 10보다 작으면서 5보다 커야함

 

c언어에서의 || == 파이썬에서의 or연산자

  • 만약 처음 조건이 참이라면 뒤의 조건은 검사하지 않음.
if a > 10 or a < 5: #a가 10보다 크거나 5보다 작아야함

 

c언어에서의 ! == 파이썬에서의 !연산자

if a not 10: #a가 10이 아니어야함

위와 같이 파이썬에선 논리연산자를 기호로 쓰지 않고 and or not으로 사용한다.

 

🔍random 함수들

random라이브러리에서 다양한 함수들을 불러올 수 있다!

  • randint(x,y): x와 y사이의 정수를 불러온다.
  • random(): 0.0과 1.0사이의 실수를 불러온다.
  • randrange(x,y,z): x와 y사이의 x+(n*z)의 수들을 불러온다.

'언어 > Python' 카테고리의 다른 글

5. 함수  (0) 2025.08.23
4. 자주 쓰이던 함수  (0) 2025.08.22
3. 반복문  (0) 2025.08.21
1. 파이썬의 기본 타입, 규칙 등...  (2) 2025.08.20
0. 파이썬의 기초  (1) 2025.08.19