파이썬

[파이썬] dict to list 변환 (딕셔너리 to 리스트)

앤테바 2022. 2. 23. 20:30
반응형

딕셔너리를 리스트로 변환하는 방법은 여러가지 있습니다.

 

차근 차근 하나씩 살펴 보시죠...

 

방법1) item() 함수 사용

딕셔너리의 items() 함수를 사용합니다.

scores = {'korean': 90, 'math': 85, 'english': 95}
score_list = scores.items()
print(score_list)

출력

[('korean', 90), ('math', 85), ('english', 95)]

방법2) list comprehension

방법1과 거의 유사합니다. 
딕셔너리의 items()를 호출해서 key, value를 iteration해서 리스트화합니다.

scores = {'korean': 90, 'math': 85, 'english': 95}
score_list = [(k, v) for k, v in scores.items()]
print(score_list)

출력

[('korean', 90), ('math', 85), ('english', 95)]

방법3) zip() 함수 사용

zip() 함수를 사용해서 딕셔너리의 keys(), values() 결과를 서로 엮어줘서 리스트로 변환합니다.

scores = {'korean': 90, 'math': 85, 'english': 95}
score_list = list(zip(scores.keys(), scores.values()))
print(score_list)

방법4) iteration

딕셔너리를 순회하면서 리스트에 하나씩 추가합니다.

scores = {'korean': 90, 'math': 85, 'english': 95}

score_list = []
for key in scores:
    score_list.append([key, scores[key]])

print(score_list)

출력

[['korean', 90], ['math', 85], ['english', 95]]

방법5) map 함수 사용

scores = {'korean': 90, 'math': 85, 'english': 95}
score_list = list(map(list, scores.items()))
print(score_list)

출력

[['korean', 90], ['math', 85], ['english', 95]]
반응형