Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
Tags
- list comprehension
- 점프투파이썬
- 코딩테스트
- 상속
- C++
- c++코딩테스트합격자되기
- 다형성
- 11382번
- 제네릭프로그래밍
- 데이터사이언스
- 포인터
- 인프런
- python
- 유도클래스
- 주피터
- 동적바인딩
- 기본클래스
- OOP
- 연산자오버로딩
- 람다식
- OpenCV
- 깊은복사
- 멤버함수로구현
- 참조자
- 스택
- 프로그래머스lv2
- 얕은복사
- STL
- 백준
- 코드잇
Archives
- Today
- Total
WjExplor Story
두 리스트를 이용해 딕셔너리 생성 본문
리스트 두 개를 이용하여 딕셔너리를 만드세요.
keys = ["name", "age", "city"]
values = ["Tom", 20, "Seoul"]
처음에 내가 작성한 코드
dict_val= {}
for item in keys: # item 은 "name", "age", "city" 와 같은 문자열
dict_val={keys[item],values[item]} # 오류 발생
print(dict_val)
오류 코드
- key[item] 에서 TypeError 발생
- {key[item], values[item]} 는 딕셔너리가 아닌 세트(set) 이다.
파이썬스럽고 간결한 방법은 zip() 함수와 dict() 생성자를 함께 사용하는 것이다.
1. zip() 함수로 두 리스트의 요소를 짝지어 튜플로 만든다.
zip(keys, value) 결과 :
[('name', 'Tom'), ('age', 20), ('city', 'Seoul')]
2. dict() 생성자에 짝지어진 튜플을 전달하여 딕셔너리를 만든다.
keys = ["name", "age", "city"]
values = ["Tom", 20, "Seoul"]
my_dict ={}
zipped_pairs=zip(keys,values)
my_dict = dict(zipped_pairs)
print(my_dict)
해설
zip(keys, values) : keys 리스트와 values 리스트의 같은 위치에 있는 요소들을 짝지어 ('name','Tom') , ('age' , 20), ('city', 'Seoul') 과 같은 튜플들의 이터레이터(iterator)를 생성한다.
이 방법이 두 리스트를 이용해 딕셔너리를 만들 때 가장 권장되는 방식
'Python > Python : Code Study' 카테고리의 다른 글
| datetime 모듈의 timedelta (0) | 2025.09.26 |
|---|---|
| 리스트를 문자열 길이에 따라 정렬하기 (0) | 2025.09.26 |
| 리스트 중첩 (0) | 2025.09.25 |
| *args의 역할 (0) | 2025.09.25 |
| 파이썬 리스트 컴프리헨션 (List Comprehension) (0) | 2025.09.25 |