Python의 중첩 사전 이해
Python 사전 이해는 기존 사전에서 새로운 사전을 만들 수 있는 강력한 도구입니다. 목록 내포와 유사하지만 목록을 만드는 대신 사전을 만듭니다.
딕셔너리 이해는 딕셔너리를 만드는 매우 간결한 방법이며 하나의 튜플이 키와 값을 포함하는 두 개의 튜플에서 딕셔너리를 만들고 싶을 때 유용합니다.
이 자습서에서는 Python 중첩 사전 이해, 그 사용 및 Python에서 사용하는 이점을 살펴봅니다.
파이썬 사전 이해
사전 이해는 사전 필터링, 변환 또는 새 사전 생성과 같은 사전에 대한 다양한 작업을 수행하는 데 사용할 수 있는 강력한 도구입니다.
사전 내포를 사용하면 다른 사전이나 다른 반복 가능한
데이터 유형에서 사전을 만들 수 있습니다. 또한 값 대신 키-값 쌍을 지정할 수 있습니다.
사전 이해는 기존 사전에서 새 사전을 만드는 데 가장 일반적으로 사용됩니다. 예를 들어 기존 사전의 키 또는 값만 포함하는 새 사전을 만들 수 있습니다.
기존 두 사전의 키와 값을 포함하는 새 사전을 만들 수도 있습니다. 사전 이해를 사용하여 기존 사전을 조작할 수도 있습니다.
예를 들어 사전에서 항목을 추가 또는 제거하거나 기존 항목의 값을 변경할 수 있습니다.
코드 예:
square_dict = dict()
for num in range(1, 4):
square_dict[num] = num * num
print(square_dict)
# dictionarycomprehension example
square_dict = {num: num * num for num in range(1, 4)}
print(square_dict)
출력:
{1: 1, 2: 4, 3: 9}
{1: 1, 2: 4, 3: 9}
사전 이해의 구문
Dictionary Comprehension은 Python의 다른 데이터 구조에서 사전을 생성하기 위한 편리한 도구입니다. 구문은 {key: value for (key, value) in iterable}
로 간단하게 읽을 수 있습니다.
코드 예:
# The price of the item in dollars
old_price = {"price of milk": 2, "price of coffee": 4, "price of bread": 3.5}
dollar_to_pound = 0.76
new_price = {item: value * dollar_to_pound for (item, value) in old_price.items()}
print(new_price)
출력:
{'price of milk': 1.52, 'price of coffee': 3.04, 'price of bread': 2.66}
Python 중첩 사전 이해
중첩된 사전 이해는 일련의 키-값 쌍을 반복한 다음 해당 쌍에서 새 사전을 구성하는 방식으로 작동합니다. 새 사전은 dict.update
또는 dict.fromkeys
와 같은 매핑 함수를 사용하여 빌드할 수 있습니다.
예를 들어 다음 데이터 구조를 고려하십시오.
data = {"a": 1, "b": 2, "c": 3, "d": 4}
이 데이터 구조의 키만 유지하는 새 사전을 합성하려면 다음 중첩 사전 이해를 사용할 수 있습니다.
new_dict = {k: data[k] for k in data}
print(new_dict)
다음과 같은 새 사전을 생성합니다.
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
다음 중첩 사전 이해를 사용하여 이 데이터 구조의 값만 유지하는 새 사전을 합성할 수 있습니다.
new_dict = {k: v for k, v in data.items()}
다음과 같은 새 사전을 생성합니다.
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
보시다시피 중첩된 사전 이해는 복잡한 데이터 구조를 빠르고 효율적으로 처리하고 조작할 수 있는 강력한 도구입니다. 임시 데이터 구조를 만드는 쉬운 방법이기도 합니다.
파이썬에서 중첩된 사전 이해의 구문
중첩된 사전 이해를 만들려면 첫 번째 사전 이해의 괄호 안에 다른 사전 이해를 넣으십시오.
다음 예제는 서로 다른 과일
에 대한 정보를 포함하는 각 내부 사전을 사용하여 사전 사전을 생성합니다.
{key:value for key, value in outer_dict.items() if key =='fruit'}
{key:{'name':fruit['name'], 'colour':fruit['colour']} for key,fruit in outer_dict.items() if key == 'fruit'}
위의 첫 번째 사전 이해는 과일
의 이름인 키와 해당 과일
의 색상
인 값으로 사전을 생성합니다.
위의 두 번째 사전 이해는 동일한 작업을 수행하지만 추가 수준의 중첩을 추가하여 사전의 사전을 만듭니다.
코드 예:
dictionary = {k1: {k2: k1 * k2 for k2 in range(1, 3)} for k1 in range(2, 5)}
print(dictionary)
출력:
{2: {1: 2, 2: 4}, 3: {1: 3, 2: 6}, 4: {1: 4, 2: 8}}
중첩된 사전 이해의 장점
Python에서 중첩된 사전 이해를 사용하면 몇 가지 이점이 있습니다.
- 복잡한 중첩 사전을 쉽게 만드는 데 사용할 수 있습니다.
- 많은 양의 데이터를 효율적으로 처리하는 데 사용할 수 있습니다.
- 마지막으로 기존 사전을 기반으로 새 사전을 빠르게 만드는 데 사용할 수 있습니다.
따라서 중첩된 사전 이해가 작동하는 방식을 이해하면 Python에서 복잡한 데이터를 빠르고 효율적으로 사용할 수 있습니다.
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn