대외활동/[부트캠프] 빅데이터 분석가 과정

[Python] 02-3. Python 기초 - 조건문과 반복문

셈뇽 2024. 4. 1. 01:15
02-3. python 기초 - 조건문, 반복문

 

 

 

조건문

✅ 조건에 따라 다른 코드를 실행하는 이분법적인 동작

→ 조건문을 작성할 때는 조건이 명확해야 하며, 두 개의 조건에 겹치지 않게 "분할"하여 전체를 나누어야 한다.

 

- 조건문 연습코드

a = 10

if a>0 :                    ## 1번 조건 - 만약 a가 0보다 크다면,
  print("a는 양수입니다")
elif a == 0:				## 2번 조건 - 만약 a가 0보다 크지않고 0과 같다면, 
  print("a는 0입니다")
else:						## 3번 조건 - 만약 a가 0보다 크지도 않고 같지도 않다면, 
  print("a는 음수입니다")
  
 ## return : a는 양수입니다

 

 

 

반복문

✅ 코드의 규칙을 토대로 반복적인 동작을 수행

반복 참조 범위에 리스트, 튜플, 딕셔너리, 셋 모두 들어갈 수 있어 다른 언어에 비해 효율적이다.

 

- 반복문 연습코드

## 반복문 
i=0

for i in range(10):    ## i 가 10의 범위에 있을 때
  print(i)			   ## i를 출력해라
  
##return :
# 0
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9

## 반복문 

for i in range(1, 10, 1): #range(시작값, 끝값+1, 간격)
  print(i)
  
## return : 
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9

* C언어에서는, i를 따로 갱신해주어야 하지만, 파이썬은 자동으로 +1 되어 갱신된다.

 

1️⃣ 리스트에 반복문 적용하기

# 대상이 리스트
a_list = ['a','b','cc','dd','fff',20,30,'x']


for i in a_list :
  print(i)
  
## return :
# a
# b
# cc
# dd
# fff
# 20
# 30
# x

for i in enumerate(a_list):  
  print(i)
  
## return :
# (0, 'a')
# (1, 'b')
# (2, 'cc')
# (3, 'dd')
# (4, 'fff')
# (5, 20)
# (6, 30)
# (7, 'x')

enumerate() 함수 → 리스트를 (idx, value)의 형태로 출력 가능하다 ⭐

 

2️⃣ 딕셔너리에 반복문 적용하기

# 대상이 딕셔너리
a_dict = {"a":1234, "b":5678, "c":999}

for i in a_dict:
  print(i)            ## key만 출력됨
## return : 
# a
# b
# c

for i in a_dict:
  print(a_dict[i])   ## value만 출력됨
## return :
# 1234
# 5678
# 999

for i in a_dict.items():
  print(i)           ## key와 value 모두 출력
## return:
# ('a', 1234)
# ('b', 5678)
# ('c', 999)

for i in a_dict.items():
  print(i[0], i[1])           ## key와 value에 인덱스로 접근
## return
# a 1234
# b 5678
# c 999

for k, v in a_dict.items():
  print(k, v)                ## 멀티할당을 통해 위의 코드를 간결하게
  ## return
# a 1234
# b 5678
# c 999

 

- 반복문 연습코드 2. Q) 국어 80점, 수학 75점, 영어 55점, 사회 90점 → 학생의 평균은?

score = [80, 75, 55, 90]
sum_ = 0
len_ = 0

for i in score:
  sum_+=i
  len_+=1

mean_ = sum_/len_
print(mean_, len_)

## return
# 75.0 4

 

 

이중 반복문

✅ 리스트의 원소가 리스트일 때 이중반복문을 활용하여 리스트의 모든 원소를 rolling 할 수 있다.

# 연습 ->c를 제거하자
a = [['a','b','c','d'],'f','g',['c','i']]

for i in a:			# 리스트 a의 모든 원소를 rolling
  for j in i:  		# {리스트 a의 원소=}j 의 원소를 rolling
      if j=='c':
        print(j)
        i.remove(j) # 원소를 제거하는 함수 remove()
      else:
        pass        # 보통 else의 형식을 맞출 때 사용
        
print(a)

# [['a', 'b', 'd'], 'f', 'g', ['i']]