본문 바로가기
Programming/Python

[Python] 조건문

by inyeong 2024. 4. 21.

1. 제어문

  • 제어문은 문장 실행 순서를 제어하는 문장으로, 조건문과 반복문으로 나누어진다.
  • 조건문은 조건에 따라 실행 여부가 결정되는 명령문이다.
  • 반복문은 특정 조건에 따라 문장을 반복하여 실행하는 명령문이다.
  • 프로그램의 3가지 제어 구조 : 순차 구조, 선택 구조, 반복 구조 

2. if-else문

  • if 조건식:
    	문장1		# 조건식이 참일 때 문장1 실행
    else:
    	문장2		# 조건식이 거짓일 때 문장2 실행
  • 주의할 점 : 콜론(:), 들여쓰기 
  • block :같은 개수의 들여쓰기를 통해 묶인 코드를 동일한 block에 속한다고 한다. 
    if price>20000:
    	shipping_cost=0 # 블록
        	discount=0.1    # 블록
    else:
    	shipping_cost=3000​
  • else는 불필요한 경우 생략 가능 
  • 중복 방지하기
    if price>20000:
    	shipping_cost=0
        	print(f"배송비: {shipping_cost}")
    else:
    	shipping_cost=3000
        	print(f"배송비: {shipping_cost}")​​​
    if price>20000:
    	shipping_cost=0
    else:
    	shipping_cost=3000
    print(f"배송비: {shipping_cost}")​
  • pass : 나중에 채우겠다, 미구현 코드를 의미하는 키워드 
    if price>60000:
    	pass
    else:
    	pass​

3. 논리 연산자 

 

x and y
x or y
not x

 
 
논리 연산자는 관계 연산자보다 우선 순위가 낮아 괄호를 사용하지 않고 작성할 수 있다. 

price>20000 and card=="python"​

 
 
가독성 : 변수를 True나 False와 비교하는 것은 좋지 않고, not을 사용하는 것이 더 낫다. 

if full==False:

if not full: # 가독성 좋음​
0<=x<=100 
# 파이썬에서는 가능하지만, 대부분 다른 언어에서 허용하지 않으므로 권장하지 않음

x>=0 and x<=100 # 권장

 


4. 드모르간 법칙

 

if not(conuntry=="한국" and province!="제주")

if country!="한국" or province=="제주

 


5. 조건 연산자 

주의할 점: 반드시 괄호를 써야 한다. 안 쓰면 할당 연산자가 먼저 계산된다. 
 

# 최댓값 
max_value=(x if x>y else y) # x>y가 참이면 x, 거짓이면 y

# 최솟값
min_value=(x if x<y else y)

# 절댓값 
absolute_value=(x if x>0 else -x)

 


6. 중첩 if문

 

if 조건식1:
	if 조건식2:
    		문장1
    	else:
    		문장2
else:
	if 조건식3:
    		문장3
    	else:
    		문장4

 


7. 연속 if문 

세 코드는 모두 다른 의미 

if score>=90:
	print("A")
elif score>=80:
	print("B")
elif score>=70:
	print("C")
elif score>=60:
	print("D")
else:
	print("F")
    
    
if score>=60:
	print("D")
elif score>=70:
	print("C")
elif score>=80:
	print("B")
elif score>=90:
	print("A")
else:
	print("F")

# 제일 특수한 경우를 먼저 검사, 가장 일반적인 경우 나중에 검사 
    
    
if score>=90:
	print("A")
if score>=80:
	print("B")
if score>=70:
	print("C")
if score>=60:
	print("D")
if score<60:
	print("F")​

8. 예제 풀이

 

'Programming > Python' 카테고리의 다른 글

[Python] 수식과 연산자  (0) 2024.04.21