본문 바로가기
Dev/Python

[Python/파이썬] 딕셔너리 컴프리헨션(dictionary comprehension)

by 석맨.class 2024. 2. 23.
반응형

파이썬에는 리스트 컴프리헨션(list comprehension) 처럼 리스트를 간단하게 선언할 수 있는데
리스트 말고도 딕셔너리도 이와 같이 간단하게 선언할 수 있다.

딕셔너리 컴프리 헨션

test_dict = { new_key:new_value for (key, value) in dict.items() if test }

poke = ['이상해씨', '이상해풀', '이상해꽃', '꼬부기', '???', '거북왕', '파이리', '리자드', '리자몽']
test = { name:index for (index, name) in enumerate(poke) }
print(test)

# {'이상해씨': 0, '이상해풀': 1, '이상해꽃': 2, '꼬부기': 3, '???': 4, '거북왕': 5, '파이리': 6, '리자드': 7, '리자몽': 8}
  • 딕셔너리형에는 원소를 순환하는 .items() 메소드가 있다.
  • 딕셔너리 컴프리헨션의 if 문에 조건을 걸 수 있다.
poke = ['이상해씨', '이상해풀', '이상해꽃', '꼬부기', '???', '거북왕', '파이리', '리자드', '리자몽']
test = { name:index for (index, name) in enumerate(poke) }

test2 = { key:'물' for (key, value) in test.items() if 2 < value < 6 }
print(test2)

# {'꼬부기': '물', '???': '물', '거북왕': '물'}

'Dev > Python' 카테고리의 다른 글

[Python/파이썬] 파이썬의 리스트 컴프리헨션(list comprehension)  (0) 2024.02.15
[Udemy강의] day1 , day2  (0) 2024.01.18
날짜 형식  (0) 2023.12.05
python - 함수 선언 시 -> 화살표  (0) 2023.09.22
with 문  (0) 2023.09.22