본문 바로가기

Python 파이썬

파이썬 제어문(2) - for 문

제어문(Control Statements)

  • 조건과 반복 처리를 통해 코드의 실행 흐름을 제어할 수 있음
  • "들여쓰기"로 구역을 나눔

2. for 문**

  • 첫번째 값부터 마지막 값까지 실행

- 문자열

s1 = 'good'
for i in s1 :
	print(i)

g

o

o

d

=> good 문자열을 앞에서부터 한 글자씩 출력 

=> 문자열을 리스트로 변경하면 ['g','o','o','d']임. 즉, 요소하나씩 출력한다고 이해하면 쉬움.

 

 

- 리스트

li1 = list[range(5)]
for i in li1 :
	print(i)

0

1

2

3

4

=> 0에서 4까지 요소를 갖는 리스트 li1을 생성 후, for문을 사용하여 처음부터 끝까지 하나씩 출력함

 

 

- for문 if문 함께 사용

# 0부터 10까지 숫자 중 짝수 출력
for i in range(11):
	if i % 2 == 0:
    		print(i)

0

2

4

6

8

10

=> range(11) : 0~10까지 생성,

=> for i in range(11) : range(11)에 있는 요소를 i에 넣고 처음부터 끝까지 실행,

=> if i % 2 == 0 : 요소 i를 2로 나누었을 때 나머지가 0인 경우(짝수)는 참

 

 

- 1부터 100까지 더하기

s = 0
for i in range(1,101) :
	s = s + i
    
print(s)

5050

=> s = 0 :기준이 될 변수 s를 생성함(i 값을 더해줘야 하기 때문에 s 초기값은 0이어야 함)

=> for i in range(1,101) : 1부터 100까지 반복

=> 첫번째 반복 : s = 0, i = 1  → s = s + i = 1

=> 두번째 반복 : s = 1, i = 2  → s = s + i = 3

=> 세번째 반복 : s = 3, i = 3  → s = s + i = 6


=> 100번째 반복 : s = 4950, i = 100  → s = s + i = 5050

 

- enumerate() 활용 ( enumerate() : 순서와 요소를 함께 추출 )

li2 = ['컴퓨터', '모니터', '노트북', '냉장고']

for i, v in enumerate(li2) :
	print(i, m, sep=':')

0:컴퓨터
1:모니터
2:노트북
3:냉장고

=> enumerate()를 활용하여 순서는 i, 요소 값은 v에 넣어서 출력함

 

2.1 for 문 활용

- append()를 활용하여 조건에 맞는 새로운 리스트 만들기

 

방법 1.

n1 = []

for i in range(11) :
	if i % 2 == 0 :
    		n1.append(i)

print(n1)

[0, 2, 4, 6, 8, 10]

=> append를 사용하여 n1 리스트에 0부터 10까지 짝수를 추가함

 

방법 2. ** "comprehension"

n2 = [i for i in range(11) if i % 2 == 0]
print(n2)

[0, 2, 4, 6, 8, 10]

=> [원하는 형식, for 문, if 문]   :   이런식으로도 간편하게 작성할 수 있음

 

- 연령대 구하기

li3 = [12, 50, 30, 22, 68, 35, 26, 15]

# li3 요소를 연령대로 변경하여 n2 리스트에 저장
n2 = [i//10*10 for i in li3]
print(n2)

[10, 50, 30, 20, 60, 30, 20, 10]

=> i를 10으로 나눈 몫에 10을 곱하여 연령대 계산

=> [원하는 형식, for 문, if 문]   :   이런식으로도 간편하게 작성할 수 있음

 

- 딕셔너리 활용

dic1 = {'TV':200,
	'냉장고':300,
        '컴퓨터':250,
        '청소기':50}

for k in dic1 :
	value = dic1[k]
    print(f'{k}: {value}')

TV: 200
냉장고: 300
컴퓨터: 250
청소기: 50

 

dic1 = {'TV':200,
	'냉장고':300,
        '컴퓨터':250,
        '청소기':50}

# items() 활용
for k, v in dic1.items() :
    print(f'{k}: {v}')

TV: 200
냉장고: 300
컴퓨터: 250
청소기: 50

 

=> 딕셔너리 key 값과, value 값을 for문에 넣어 하나씩 출력함

 

++ 집합에서도 사용 가능

'Python 파이썬' 카테고리의 다른 글

파이썬 함수  (0) 2023.02.13
파이썬 제어문(3) - while 문  (0) 2023.02.10
파이썬 제어문(1) - if 문  (0) 2023.02.09
파이썬 기초(3-4) - 딕셔너리(Dictionary)  (0) 2023.02.09
파이썬 기초(3-3) - 집합(Set)  (0) 2023.02.09