파이썬

[파이썬] dict에서 첫 번째 키 값 가져오기

앤테바 2022. 3. 26. 14:44
반응형

파이썬의 사전 자료구조에서 첫번째  키를 가져오고 싶은 경우가 있습니다.

어떤 방법이 있을까요?

 

방법1)  keys() 함수 

dict.keys() 함수를 사용해서 iterable한 키를 얻고 리스트로 변환한 다음 0 index를 가져오는 방법이 있습니다.

d = {}
for i in range(1000000):
    d[i] = i
    
first_key = list(d.keys())[0]
print(f'첫번째 key : {first_key}')

출력

첫번째 key : 0

방법2) iter() 함수

iter() 함수를 이용해서 iterable한 dictionary items를 얻은 다음 next() 함수로 첫번째 키를 획득합니다.

d = {}
for i in range(1000000):
    d[i] = i
    
first_key = next(iter(d))
print(f'첫번째 key : {first_key}')

출력

첫번째 key : 0

 

방법1과 방법2가 있습니다.

어떤 방법을 사용하는 게 더 효과적일까요?

직관적으로 봐도 방법2가 더 빠를 것 같습니다.

 

방법1과 방법2의 속도를 비교해 보겠습니다.

방법2가 거의 약 80,000배 빠르네요.

 

  방법1) keys() 함수 방법2) next() 함수
코드
d = {}
for i in range(1000000):
    d[i] = i
    
%timeit list(d.keys())[0]
d = {}
for i in range(1000000):
    d[i] = i
    
%timeit next(iter(d))
수행 시간
7.96 ms ± 79.5 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)

96.2 ns ± 0.333 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)

 

 

반응형