Rumah > pembangunan bahagian belakang > Tutorial Python > Apakah pemahaman kamus dalam python?

Apakah pemahaman kamus dalam python?

James Robert Taylor
Lepaskan: 2025-03-21 13:06:31
asal
747 orang telah melayarinya

Apakah pemahaman kamus dalam python?

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>
Salin selepas log masuk

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>
Salin selepas log masuk

Ini akan menghasilkan squares yang menjadi {1: 1, 2: 4, 3: 9, 4: 16, 5: 25} .

Bagaimanakah pemahaman kamus dapat meningkatkan kecekapan kod python saya?

Pemahaman kamus dapat meningkatkan kecekapan kod python dalam beberapa cara:

  1. Sintaks Ringkas : Ia membolehkan anda membuat kamus dalam satu baris kod yang boleh dibaca, mengurangkan jumlah kod yang anda perlukan untuk menulis dan menyelenggara.
  2. Pembacaan yang lebih baik : Dengan pemeluwapan kamus kompleks ke dalam satu baris, pemahaman kamus menjadikan kod anda lebih mudah difahami dan mengurangkan kemungkinan kesilapan yang boleh berlaku ketika menulis lebih banyak kod verbose.
  3. Pelaksanaan yang lebih cepat : Dalam banyak kes, pemantauan kamus lebih cepat daripada membuat kamus menggunakan gelung tradisional. Ini kerana mereka dioptimumkan oleh penterjemah Python untuk berjalan dengan lebih cekap.
  4. Kecekapan memori : Apabila mengubah satu kamus ke dalam yang lain, pemahaman kamus boleh menjadi lebih cekap memori daripada membuat senarai pertengahan dan kemudian menukarnya ke kamus.

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>
Salin selepas log masuk

Menggunakan pemahaman kamus di sini lebih cekap daripada melelehkan kamus dan disambungkan ke kamus baru.

Apakah beberapa contoh praktikal menggunakan pemahaman kamus di Python?

Pemahaman kamus boleh digunakan dalam pelbagai senario praktikal. Berikut adalah beberapa contoh:

  1. Mengubah data : Anda boleh menggunakan pemahaman kamus untuk mengubah data dari satu format ke yang lain. Sebagai contoh, menukar suhu Celsius ke Fahrenheit:
 <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>
Salin selepas log masuk
  1. Data Penapisan : Kefekulasi Kamus boleh digunakan untuk menapis kamus berdasarkan keadaan. Sebagai contoh, menapis pelajar dengan gred di atas ambang tertentu:
 <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>
Salin selepas log masuk
  1. Membalikkan Kamus : Anda boleh menukar kunci dan nilai kamus, berguna untuk membuat pemetaan terbalik:
 <code class="python">original_dict = {'a': 1, 'b': 2, 'c': 3} inverted_dict = {v: k for k, v in original_dict.items()}</code>
Salin selepas log masuk
  1. Mewujudkan kamus dari senarai : Anda boleh membuat kamus dari dua senarai, di mana satu senarai menyediakan kunci dan yang lain memberikan nilai -nilai:
 <code class="python">keys = ['a', 'b', 'c'] values = [1, 2, 3] new_dict = {k: v for k, v in zip(keys, values)}</code>
Salin selepas log masuk

Bolehkah pemahaman kamus digunakan dengan struktur data python yang lain?

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.

  1. Senarai Pemahaman : Ini bersamaan dengan senarai, menggunakan sintaks yang sama untuk membuat senarai baru dari ayat:
 <code class="python">numbers = [1, 2, 3, 4, 5] squares = [num ** 2 for num in numbers]</code>
Salin selepas log masuk
  1. Tetapkan pemahaman : Sama seperti pemahaman kamus, tetapi digunakan untuk membuat set:
 <code class="python">numbers = [1, 2, 3, 4, 5] squares_set = {num ** 2 for num in numbers}</code>
Salin selepas log masuk
  1. Ekspresi Generator : Ini adalah serupa dengan Senarai Kompresi tetapi membuat objek penjana, yang boleh diulang beberapa kali tetapi menggunakan memori yang kurang:
 <code class="python">numbers = [1, 2, 3, 4, 5] squares_gen = (num ** 2 for num in numbers)</code>
Salin selepas log masuk

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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan