본문 바로가기
코딩 익히기/파이썬

파이썬 for 반복문 응용, items 메서드와 range 함수 결합 방식

by 낭라리추 2022. 12. 9.
반응형

이번 포스팅에서는 파이썬의 for 반복문을 응용해서 활용하는 방식에 대해서 알아보도록 할텐데요, 딕셔너리 자료구조를 이용한 items 메서드와 정수의 범위를 지정해주는 range 함수와 결합하여 for 반복문을 활용하는 방식에 대해서 알아보도록 합시다. for 반복문의 기본개념이 궁금하신 분들은 아래 포스팅도 확인해주세요.

 

파이썬 for 반복문 개념 및 활용 예시 총정리

파이썬을 통해서 반복적인 업무를 수행할 수 있습니다. 컴퓨터는 전기와 명령어만 공급되면 지치지 않는 지구력으로 반복 업무 중 발생 가능한 오류율이 제로에 가까운 특성을 가지고 있기에

wonderful-today.com

 

1. 파이썬 for 반복문과 items 메서드 결합

items 메서드 기본개념

파이썬에서 딕셔너리 자료구조를 활용해 for 반복문으로 쓰시는 경우, items 메서드를 함께 활용하시면 편리하게 키와 밸류값을 호출하실 수 있습니다. items 메서드는 딕셔너리 자료구조의 키와 밸류를 튜플 자료구조의 형태로 리턴 시켜주는 언패킹 함수로 사용 방식은 아래와 같습니다.

변수명.items( )

 

items 메서드 활용 예시

예시를 볼까요? "store" 이라는 딕셔너리 자료구조를 만들고 각각 키와 밸류값을 저장한 후, 이를 items 메서드store.items() 이라고 호출하면 키와 밸류값이 함께 쌍으로 호출이 되는 튜플의 형태로 도출이 되는 것을 볼 수 있습니다.

 

items를 활용해서 딕셔너리 자료구조의 값을 호출하는 것을 반복문의 형태로 한번 확인해보실까요?

items 메서드를 이용해서 for 반복문을 쓰시는 경우에는 변수를 두 개 지정해주어야 합니다. 저는 기본개념을 이해하기 위해 keysk, valuesv로 지정해서 반복문을 for k,v in store.items()이라고 만들어줍니다. 그런 후 print(k,v) 라는 명령어를 입력하면 딕셔너리에 저장된 키와 밸류가 함께 반복적으로 도출되는 것을 볼 수 있습니다.

 

물론 위의 for 반복문은 꼭 items를 활용하지 않고 아래처럼 명령어를 주어도 동일한 결과가 나오는 것을 확인하실 수 있습니다.

 

2. 파이썬 range 함수와 for 반복문 결합

파이썬에서는 정수의 범위를 지정하여 활용할 때 range라는 함수를 쓰는데요, range 함수를 for 반복문과 함께 활용해볼까요?

range 함수 기본개념

range는 정수의 범위를 지정하는 함수입니다. range(시작값, 끝값)을 입력하면 시작값부터 끝값 이전 값이 출력됩니다(끝값은 포함되지 않습니다). 만약 값의 증가폭을 1이 아닌 별도의 값으로 지정하고 싶다면 range(시작값, 끝값, 증가값)으로 지정해주면 됩니다.

한번 파이썬에서 직접 작업을 해봅시다. 함수 range를 이용해서 range(10)라고 입력하면 정수인 0부터 9까지가 도출됩니다. 이것을 표현하는 방식은 range(0, 10)을 해도 동일합니다. 만약 값을 2씩 증가하여 출력하고 싶다면 range(0, 10, 2)라고 주면 됩니다.

 

range 함수와 for 반복문 결합 활용

range 함수는 for 반복문과 결합해서 많이 활용됩니다. 만약 1부터 9까지 반복적으로 값을 출력하고 싶을 때 range함수를 쓰지 않으면 이렇게 표현이 됩니다. for i in [0,1,2,3,4,5,6,7,8,9]라고 반복문을 입력 후 print(i)라는 실행문을 입력하면 0부터 9까지 출력이 되죠.

하지만 항상 이렇게 정수의 모든 범위를 입력할수 없겠죠? 특히나 정수의 범위가 십만, 백만 단위로 넘어갈 경우에 이를 일일이 기입하기는 어려울 테니깐요. 그럴 땐 아래와 같이 for 반복문과 range 함수를 결합하여 쓰는 것이 편합니다. for i in range(0,10) 라는 for 반복문을 지정해주고, print(i)를 입력해주면 위와 같은 값이 도출되는 것을 볼수 있습니다.

 

참고로 만약 0부터 9라는 정수 범위 내에서 증가값이 1이 아닌 3씩 증가하는 숫자를 출력하고 싶다면, for i in range(0,10,3) 이라고 입력한 후 명령어를 주면 0,3,6,9라는 숫자가 도출되는 것을 볼 수 있습니다.

 

 

 
 
반응형

댓글