Python의 사전 이해력은 단일 줄의 코드를 사용하여 사전을 만드는 간결한 방법입니다. 이를 통해 한 사전을 다른 사전으로 변환하거나 목록 이해와 유사한 구문을 사용하여 반복적으로 사전을 만들 수 있습니다. 사전 이해력의 기본 구조는 다음과 같습니다.
<code class="python">{key_expression: value_expression for item in iterable if condition}</code>
여기에서 key_expression
및 value_expression
새로운 사전의 키와 값을 생성하는 데 사용되는 공식입니다. item
iterable
가능한 각 요소를 나타내며 condition
지정된 기준을 충족하는 항목 만 포함하는 선택 필터입니다.
예를 들어, 숫자 목록을 키가 숫자이고 값이 사각형 인 사전으로 변환하는 것을 고려하십시오.
<code class="python">numbers = [1, 2, 3, 4, 5] squares = {num: num ** 2 for num in numbers}</code>
이로 인해 squares
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
가됩니다.
사전 이해력은 여러 가지 방법으로 파이썬 코드의 효율성을 향상시킬 수 있습니다.
예를 들어, 값이 10보다 큰 키 값 쌍 만 유지하도록 사전을 필터링하는 작업을 고려하십시오.
<code class="python">original_dict = {'a': 5, 'b': 15, 'c': 25, 'd': 5} filtered_dict = {k: v for k, v in original_dict.items() if v > 10}</code>
사전 이해력을 사용하는 것은 사전을 반복하고 새로운 사전에 추가하는 것보다 더 효율적입니다.
사전 이해력은 다양한 실용적인 시나리오에서 사용될 수 있습니다. 몇 가지 예는 다음과 같습니다.
<code class="python">celsius_temps = {'Paris': 28, 'London': 22, 'Berlin': 25} fahrenheit_temps = {city: (temp * 9/5) 32 for city, temp in celsius_temps.items()}</code>
<code class="python">students = {'Alice': 85, 'Bob': 72, 'Charlie': 90, 'David': 68} high_achievers = {name: grade for name, grade in students.items() if grade >= 80}</code>
<code class="python">original_dict = {'a': 1, 'b': 2, 'c': 3} inverted_dict = {v: k for k, v in original_dict.items()}</code>
<code class="python">keys = ['a', 'b', 'c'] values = [1, 2, 3] new_dict = {k: v for k, v in zip(keys, values)}</code>
사전 이해력은 사전 생성을 위해 특별히 설계되었지만 다른 이름으로 호출되지만 다른 Python 데이터 구조에 유사한 개념을 적용 할 수 있습니다.
<code class="python">numbers = [1, 2, 3, 4, 5] squares = [num ** 2 for num in numbers]</code>
<code class="python">numbers = [1, 2, 3, 4, 5] squares_set = {num ** 2 for num in numbers}</code>
<code class="python">numbers = [1, 2, 3, 4, 5] squares_gen = (num ** 2 for num in numbers)</code>
사전 이해 자체는 사전에 고유하지만, 이해 구문을 사용하여 데이터 구조를 간결하고 효율적으로 작성하는 개념은 Python의 데이터 구조에서 공통된 주제입니다.
위 내용은 파이썬의 사전 이해력이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!