2023. 4. 21. 14:36ㆍ학습/python
for 반복문은 python 에서 가장 자주 사용되는 반복문 문법 중 하나이다.
내가 자주 사용하는 문법을 정리해본다.
1. range()
range 함수는 연속된 정수 시퀀스를 생성하는 데 사용됩니다. for 반복문과 함께 사용하면 특정 횟수만큼 반복을 수행할 수 있습니다.
for i in range(5): # 0부터 4까지 총 5번 반복
print(i)
2. zip()
zip 함수는 여러 개의 이터러블(리스트, 튜플 등)을 인수로 받아 동시에 순회할 수 있도록 도와줍니다. for 반복문과 함께 사용하면 여러 개의 이터러블을 동시에 순회하며 작업을 수행할 수 있습니다.
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(name, age)
3. enumerate()
enumerate 함수는 이터러블을 입력으로 받아 인덱스와 함께 각 요소를 반환합니다. for 반복문과 함께 사용하면 이터러블을 순회하며 해당 요소의 인덱스와 값을 동시에 얻을 수 있습니다.
fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):
print(index, fruit)
정리
range()는 정수 시퀀스를 생성하여 순회하는 데 사용되고,
zip()은 여러 이터러블을 동시에 순회하는 데 사용되며,
enumerate()는 이터러블의 인덱스와 값을 동시에 반환하여 순회하는 데 사용됩니다.
cf. 추가로 유용한 함수들
4. filter()
filter() 함수는 이터러블의 요소 중 특정 조건에 맞는 요소만 필터링해 반환합니다.
for 반복문과 함께 사용하여 특정 조건을 만족하는 요소들만 순회할 수 있습니다.
def is_even(number):
return number % 2 == 0
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = filter(is_even, numbers)
for even_number in even_numbers: # == for even_number in filter(is_even, numbers):
print(even_number)
5. map()
map() 함수는 이터러블의 각 요소에 함수를 적용한 결과를 반환합니다.
for 반복문과 함께 사용하여 이터러블의 요소에 함수를 적용한 결과를 순회하며 작업을 수행할 수 있습니다.
def square(x):
return x * x
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
for squared_number in squared_numbers:
print(squared_number)
6. sorted()
sorted() 함수는 이터러블의 요소를 정렬한 새로운 리스트를 반환합니다.
for 반복문과 함께 사용하여 정렬된 요소들을 순회하며 작업을 수행할 수 있습니다.
numbers = [5, 2, 7, 1, 8, 3]
sorted_numbers = sorted(numbers)
for number in sorted_numbers:
print(number)
7. itertools 라이브러리
itertools 라이브러리는 for 반복문과 함께 사용할 수 있는 다양한 이터레이터 생성 함수를 제공합니다.
예를 들어, itertools.permutations, itertools.combinations, itertools.cycle 등의 함수를 사용하여 반복 작업을 수행할 수 있습니다.
import itertools
items = ['A', 'B', 'C']
permutations = itertools.permutations(items, 2)
for permutation in permutations:
print(permutation)
# 격과값
('A', 'B')
('A', 'C')
('B', 'A')
('B', 'C')
('C', 'A')
('C', 'B')
map, itertools 나중에 추가 공부
'학습 > python' 카테고리의 다른 글
(python) selenium 과 BeautifulSoup의 차이 (0) | 2023.04.23 |
---|---|
(python) .sort() 와 sorted() 차이 (0) | 2023.04.21 |
(python) ZeroDivisionError, try - except 블록 (0) | 2023.04.21 |
(python) format(), 포매팅 (0) | 2023.04.21 |
데이터 과학 공부에 파이썬이 왜 중요한가요? (0) | 2023.04.21 |