Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python 딕셔너리 키를 리스트로 가져오는 3가지 방법

많은 프로그램에서 딕셔너리의 키를 추출하는 작업은 해당 딕셔너리에 의존하는 다른 프로그램의 중요한 입력값으로 활용됩니다. 이 글에서는 Python 딕셔너리의 키를 리스트 형태로 가져오는 다양한 방법을 살펴보겠습니다.

1. dict.keys() 메서드 사용

가장 직관적이고 간단한 방법입니다. keys()는 딕셔너리에 기본으로 내장된 메서드로, 모든 키를 반환합니다. 여기에 list() 함수를 적용하면 손쉽게 리스트로 변환할 수 있습니다.

예제

Adict = {1:'Sun',2:'Mon',3:'Tue',4:'Wed'}
print("주어진 딕셔너리 :\n ",Adict)

print(list(Adict.keys()))

실행 결과

주어진 딕셔너리 :
    {1: 'Sun', 2: 'Mon', 3: 'Tue', 4: 'Wed'}
[1, 2, 3, 4]

2. 언패킹 연산자(*) 사용

별표(*) 연산자는 반복 가능한(iterable) 객체라면 어디에나 적용할 수 있습니다. 딕셔너리에 *를 사용하면 키가 자동으로 언패킹되어 추출되며, 이를 대괄호로 감싸면 바로 리스트가 됩니다.

예제

Adict = {1:'Sun',2:'Mon',3:'Tue',4:'Wed'}
print("주어진 딕셔너리 :\n ",Adict)

print([*Adict])

실행 결과

주어진 딕셔너리 :
{1: 'Sun', 2: 'Mon', 3: 'Tue', 4: 'Wed'}
[1, 2, 3, 4]

3. itemgetter 함수 사용

itemgetter(i)는 딕셔너리, 리스트, 튜플 등 반복 가능한 객체를 입력받아 그중 i번째 요소를 꺼내는 호출 가능한(callable) 객체를 생성합니다. 이를 map() 함수와 함께 사용하면 딕셔너리의 키를 효율적으로 추출할 수 있습니다.

예제

from operator import itemgetter

Adict = {1:'Sun',2:'Mon',3:'Tue',4:'Wed'}
print("주어진 딕셔너리 :\n ",Adict)

print(list(map(itemgetter(0), Adict.items())))

실행 결과

주어진 딕셔너리 :
{1: 'Sun', 2: 'Mon', 3: 'Tue', 4: 'Wed'}
[1, 2, 3, 4]

마무리

세 가지 방법 모두 동일한 결과를 반환하지만, 상황에 따라 적합한 방법이 다릅니다. 일반적으로는 가독성이 좋은 dict.keys() 방식이 가장 널리 사용되며, 간결한 코드를 선호한다면 언패킹([*dict]) 방식도 좋은 선택입니다.