Pemahaman Kamus dalam Python adalah cara ringkas untuk membuat kamus menggunakan satu baris kod. Ia membolehkan anda mengubah satu kamus ke dalam yang lain, atau untuk membuat kamus dari sintaks yang sama dengan sintaks yang sama dengan pemantauan senarai. Struktur asas pemahaman kamus adalah:
<code class="python">{key_expression: value_expression for item in iterable if condition}</code>
Di sini, key_expression
dan value_expression
adalah formula yang digunakan untuk menghasilkan kunci dan nilai kamus baru. item
mewakili setiap elemen dalam iterable
, dan condition
adalah penapis pilihan yang hanya termasuk item yang memenuhi kriteria yang ditentukan.
Sebagai contoh, pertimbangkan untuk mengubah senarai nombor ke dalam kamus di mana kunci adalah nombor dan nilai -nilai adalah dataran mereka:
<code class="python">numbers = [1, 2, 3, 4, 5] squares = {num: num ** 2 for num in numbers}</code>
Ini akan menghasilkan squares
yang menjadi {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
.
Pemahaman kamus dapat meningkatkan kecekapan kod python dalam beberapa cara:
Sebagai contoh, pertimbangkan tugas penapisan kamus untuk menyimpan hanya pasangan nilai utama di mana nilai lebih besar daripada 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>
Menggunakan pemahaman kamus di sini lebih cekap daripada melelehkan kamus dan disambungkan ke kamus baru.
Pemahaman kamus boleh digunakan dalam pelbagai senario praktikal. Berikut adalah beberapa contoh:
<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>
Walaupun pemahaman kamus direka khusus untuk membuat kamus, konsep yang serupa boleh digunakan untuk struktur data Python yang lain, walaupun ia dipanggil oleh nama yang berbeza.
<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>
Walaupun pemahaman kamus itu sendiri adalah unik kepada kamus, konsep mewujudkan struktur data secara ringkas dan cekap menggunakan sintaks pemahaman adalah tema yang sama di seluruh struktur data Python.
Atas ialah kandungan terperinci Apakah pemahaman kamus dalam python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!