파이썬에서 for 문은 반복문으로, 시퀀스(리스트, 튜플, 딕셔너리, 세트, 문자열 등)나 기타 이터러블 객체의 요소들을 순차적으로 순회하면서 코드 블록을 실행하는 데 사용됩니다.
기본 구조
for 문의 기본 구조는 다음과 같습니다:
for 변수 in 이터러블:
# 각 요소에 대해 실행할 코드 블록
- 변수: 이터러블의 각 요소를 순차적으로 받는 변수입니다.
- 이터러블: 리스트, 튜플, 문자열 등과 같이 순회 가능한 객체입니다.
for 문 사용 예제
리스트 순회
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(fruit)
# 출력:
# apple
# banana
# cherry
문자열 순회
for char in "hello":
print(char)
# 출력:
# h
# e
# l
# l
# o
range() 함수 사용
range() 함수는 숫자의 시퀀스를 생성합니다. 보통 for 문과 함께 숫자 반복에 사용됩니다.
# 0부터 4까지 반복
for i in range(5):
print(i)
# 출력:
# 0
# 1
# 2
# 3
# 4
# 시작점과 끝점을 지정하여 반복
for i in range(2, 6):
print(i)
# 출력:
# 2
# 3
# 4
# 5
# 증가 폭을 지정하여 반복
for i in range(1, 10, 2):
print(i)
# 출력:
# 1
# 3
# 5
# 7
# 9
딕셔너리 순회
딕셔너리를 순회할 때 키, 값 또는 키-값 쌍을 순회할 수 있습니다.
person = {'name': 'Alice', 'age': 30, 'city': 'New York'}
# 키 순회
for key in person:
print(key)
# 출력:
# name
# age
# city
# 값 순회
for value in person.values():
print(value)
# 출력:
# Alice
# 30
# New York
# 키-값 쌍 순회
for key, value in person.items():
print(f"{key}: {value}")
# 출력:
# name: Alice
# age: 30
# city: New York
for 문과 else
for 문 뒤에 else 블록을 추가할 수 있으며, 이는 루프가 정상적으로 완료된 경우에만 실행됩니다. break 문이 실행되면 else 블록은 실행되지 않습니다.
for i in range(5):
print(i)
else:
print("루프가 정상적으로 완료되었습니다.")
# 출력:
# 0
# 1
# 2
# 3
# 4
# 루프가 정상적으로 완료되었습니다.
for i in range(5):
if i == 3:
break
print(i)
else:
print("루프가 정상적으로 완료되었습니다.")
# 출력:
# 0
# 1
# 2
이 예제에서 break가 실행되면 else 블록이 실행되지 않습니다.
중첩된 for 문
for 문 안에 또 다른 for 문을 사용할 수 있습니다.
for i in range(3):
for j in range(2):
print(f"i = {i}, j = {j}")
# 출력:
# i = 0, j = 0
# i = 0, j = 1
# i = 1, j = 0
# i = 1, j = 1
# i = 2, j = 0
# i = 2, j = 1
enumerate()와 함께 사용
enumerate() 함수는 이터러블에 인덱스를 추가하여 튜플 형태로 반환합니다.
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
print(f"Index {index}: {fruit}")
# 출력:
# Index 0: apple
# Index 1: banana
# Index 2: cherry
zip()과 함께 사용
zip() 함수는 여러 이터러블을 병렬로 순회할 수 있도록 튜플로 묶어 반환합니다.
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name}은(는) {age}세입니다.")
# 출력:
# Alice은(는) 25세입니다.
# Bob은(는) 30세입니다.
# Charlie은(는) 35세입니다.
for 문은 반복적인 작업을 수행할 때 매우 유용한 구조로, 데이터를 처리하고 반복적으로 행동을 수행하는 다양한 작업에 활용됩니다.
그리고 프로그램에서는 반복하는 작업에 매우 특화되어 있고, 사람보다 탁월하다고 보이는 부분이 바로 반복문입니다.
이를 적절히 잘 활용하는것이 프로그램의 가장 기본이라고 할 수 있고 프로그램을 이용하는 가장 큰 이유 중 하나라고 할 수 있습니다.
#python #제어문 #for #반복문
'파이썬 > 제어문' 카테고리의 다른 글
Python 제어문 - while 문 (0) | 2024.08.10 |
---|---|
Python 제어문 - if 문 (0) | 2024.08.03 |