for 문
- for문을 사용하면 모든 코드를 iterate(반복) 수행 할 수 있음.
for 변수 in 리스트(or 튜플 or 문자열):
Code line
list
lnum = [1,2,3,4,5]
for list_num in lnum:
print(list_num)
> 1
2
3
4
5
tuple
tnum = (1,2,3)
for tup_num in tnum:
print(tup_num)
> 1
2
3
tuple unpacking
tup_list = [(1,3),(4,6),(8,10)]
# for문 + 변수를 사용하여 print() 실행하면
for items in tup_list:
print(items)
# 결과물로 튜플을 출력하지만
> (1, 3)
(4, 6)
(8, 10)
# for 문 + 튜플의 구조처럼 보이는 (a, b)를 사용하면
for (a,b) in tup_list:
print(a) # 튜플의 1번째 요소
print(b) # 튜플의 2번째 요소
# 결과물로 튜플 내 요소를 복사한 후 풀어서 출력함.
> 1
3
4
6
8
10
string
str1 = "hello"
for string1 in str1:
print(string1)
> h
e
l
l
o
n = [1,2,3,4,5,6,7]
for odd_num in n:
if odd_num % 2 == 1: # 나머지 값이 1이면
print(f'홀수: {odd_num}')
else: # 나머지 값이 0이면
print(f'짝수: {odd_num}')
- 변수명을 사용하지 않는 경우에는 underbar '_' 를 사용하여 가독성을 높임.
for _ in "wow"
print()
dictionary
- dictionary의 경우 for문을 사용하면 일반적으로 Key만 출력됨
d = {'k1':1,'k2':2,'k3':"3"}
for d_item in d:
print(d_item)
> k1
k2
k3
- value의 값을 출력하고 싶을 때에는
dictionary 변수에 .values() 를 붙여서 실행.
d = {'k1':1,'k2':2,'k3':"3"}
for d_valur in d.values():
print(d_valus)
> 1
2
3
- 'key:value' pair를 함께 출력하고 싶은 경우에는
dictionary 변수에 .items() 를 붙여서 실행.
d = {'k1':1,'k2':2,'k3':"3"}
for d_item in d.items():
print(d_item)
> ('k1', 1)
('k2', 2)
('k3', '3')
- tuple unpacking과 같이 for문 뒤에 변수명(d_item) 대신
key,value를 입력하여 실행하면 원하는 요소의 값을 출력할 수 있음.
d = {'k1':1,'k2':2,'k3':"3"}
for key:value in d.items():
print(key)
print(value)
> k1
1
k2
2
k3
3