데이터 분석/Python

파이썬 반복문 (2) : for문 - range(), 딕셔너리(dict)

cjangela 2025. 2. 6. 14:13

 

반복문은 프로그래밍에서 필수적으로 사용되는 개념 중 하나입니다. 그중에서도 for문은 특정 범위 내에서 반복적인 작업을 수행할 때 매우 유용합니다. 이번 글에서는 for문의 기본 개념부터 range() 함수, 딕셔너리와 함께 사용하는 방법까지 자세히 알아보겠습니다.

1. for문이란?

  • for문은 반복 가능한(iterable) 객체의 요소들을 하나씩 순회하면서 실행되는 반복문입니다. 보통 리스트, 튜플, 딕셔너리 등과 함께 사용되며, 특정 작업을 여러 번, 순차적으로 수행할 때 유용합니다.
for문 기본 문법:
for 변수 in 반복가능한 객체:
     반복 수행할 코드
  • 다음 예제는 리스트에 있는 값들을 하나씩 가져와 5를 더한 후, 새로운 리스트에 저장하는 코드입니다.
numbers = [90, 40, 50, 60, 25, 55]
new_numbers = []

for n in numbers:
    new = n + 5
    new_numbers.append(new)

print(new_numbers)
[출력 값]
[95, 45, 55, 65, 30, 60]

for문 기본 출력 방법

반응형

2. for문과 range() 함수

  • range() 함수는 특정 범위의 숫자를 생성하는 함수입니다. 주로 for문과 함께 사용되어 반복 횟수를 지정할 때 활용됩니다.
  • range(1, 5)라고 하면 1부터 4까지의 값이 나타나게 됩니다.

1) range(stop)

  • range(n)을 사용하면 0부터 n-1까지의 정수를 생성합니다.
sum = 3

for n in range(5):
    print(f'{sum}+{n}={sum + n}', end = " ")
[출력 값]
3+0=3  3+1=4  3+2=5  3+3=6  3+4=7

for문 - range(stop) 기본 출력 방법

2) range(start, stop)

  • range(start, stop)을 사용하면 start부터 stop-1까지의 정수를 생성합니다.
  • 즉, range(1, 5)로 설정하여, 1이 시작 값이 되고 5가 멈추는 값이 됩니다. 이에 따라 1~4까지의 값이 입력되어 출력되는 것을 알 수 있습니다
sum = 3

for n in range(1, 5):
    print(f'{sum}+{n}={sum + n}', end = " ")
[출력 값]
3 + 1 = 4  3 + 2 = 5  3 + 3 = 6  3 + 4 = 7

for문 - range(start, stop) 기본 출력 방법

3) range(start, stop, step)

  • range(start, stop, step)을 사용하면 start부터 stop-1까지 step 간격으로 증가하는 정수를 생성합니다.
  • 즉, range(1, 10, 2)는 시작값을 1로, 멈추는 값을 10으로, 증가하는 값은 2로 설정한 것입니다. 이에 따라 1부터 9까지의 값에서 2씩 증가하여 출력되는 것을 확인할 수 있습니다.
sum = 3

for n in range(1, 10, 2):
    print(f'{sum}+{n}={sum + n}', end = " ")
[출력 값]
3 + 1 = 4  3 + 3 = 6  3 + 5 = 8  3 + 7 = 10  3 + 9 = 12

for문 - range(start, stop, step) 기본 출력 방법

3. for문과 딕셔너리(dict)

  • for문은 리스트뿐 아니라 딕셔너리를 통해서도 출력 가능합니다.

1) for문과 딕셔너리

  • 딕셔너리의 키를 하나씩 가져와 출력할 수 있습니다.
fruit_dict = {
    'apple':'사과',
    'banana': '바나나',
    'mango':'망고',
    'pineapple':'파인애플'
}

for fruits in fruit_dict:
    print(f'{fruits}의 뜻: {fruit_dict[fruits]}')
[출력 값]
apple의 뜻: 사과
banana의 뜻: 바나나
mango의 뜻: 망고
pineapple의 뜻: 파인애플

for문과 딕셔너리 사용 방법

2) for문과 딕셔너리 - 키(key), 값(value) 따로 불러오기

  • 딕셔너리에서 .keys().values()를 사용하여 키와 값을 각각 가져올 수 있습니다.
fruit_dict = {
    'apple':'사과',
    'banana': '바나나',
    'mango':'망고',
    'pineapple':'파인애플'
}

# 키(key) 불러오기
for k in fruit_dict.keys():
    print(f'fruit_dict의 key: {k}')

# 값(value) 불러오기
for v in fruit_dict.values():
    print(f'fruit_dict의 value: {v}')

for문과 딕셔너리 이용해 키와 값 불러오기
print('---')는 단순히 선 나누기용입니다.

3) for문과 딕셔너리 - items() 활용하기

  • items()를 활용하여 원하는 부분을 불러올 수 있습니다.

  • [특정 값 출력] student에 students_score 값을 담은 후, 원하는 값의 키를 불러와 출력하면 원하는 값이 출력됩니다.
  • print()를 중간에 붙인 것은, end=' ' 함수가 다음 값에 영향을 미칠 것을 방지하기 위함입니다.
  • [items()] s_item에 students_score의 데이터들 중 해당하는 인덱스의 데이터를 담은 후, items()를 통해 그 데이터의 키와 값을 다시 담습니다. 이후 출력하면, 다음과 같이 출력되는 것을 확인할 수 있습니다.
students_score = [
    {'이름' :'JOHN', '국어' :95, '영어' :80, '수학' :90},
    {'이름' :'ANGELA', '국어' :100, '영어' :95, '수학' :100},
    {'이름' :'TOM', '국어' :65, '영어' :78, '수학': 70},
]

# 특정 값(value)만 출력하기
for student in students_score:
    print(f'{student['이름']}', end=' ')
print()

# items() 활용하기
s_item = students_score[1]
for k, v in s_item.items():
    print(f'{k}:{v}')

for문과 딕셔너리를 이용해 특정 값 출력 및 items() 활용하기

4. 예제(<파이썬으로 분석하는 데이터분석> 예제 참고)

ABC 쇼핑몰에 신규 주문 목록이 다음과 같이 생성되었습니다.
shopping_dict = {
    '주문번호': 123,
    '주문자':'김**',
    '주소':'서울시 마포구 상암동',
    '주문항목': ['김치', '바나나', '양파']
}
for문을 사용하여 shopping_dict를 출력해보세요.
더보기
shopping_dict = {
    '주문번호': 123,
    '주문자':'김**',
    '주소':'서울시 마포구 상암동',
    '주문항목': ['김치', '바나나', '양파']
}

for k, v in shopping_dict.items():
    print(f'{k}:{v}')

 

1. 딕셔너리 메서드인 items를 활용하였습니다.

2. k, v변수에 shopping_dict의 키(key)와 값(value)을 모두 담아 출력하면 아래와 같이 나옵니다.

 

-- 출력 값 --

주문번호:123
주문자:김**
주소:서울시 마포구 상암동
주문항목:['김치', '바나나', '양파']


이번 글에서는 for문의 기본 개념부터 range() 함수, 딕셔너리와 함께 사용하는 방법까지 알아보았습니다. for문은 반복적인 작업을 처리하는 데 필수적인 개념이므로, 여러 가지 방법을 직접 연습해 보는 것이 좋습니다.

감사합니다:-)