Rumah >pembangunan bahagian belakang >Tutorial Python >Membongkar Kamus dalam Python!

Membongkar Kamus dalam Python!

Mary-Kate Olsen
Mary-Kate Olsenasal
2025-01-08 06:23:42332semak imbas

Dictionary Unpacking in Python!

Pythonistas, berhimpun! ? Mari terokai teknik Python yang hebat dan sering diabaikan: membongkar kamus (aka gabungan kamus). Kaedah berkuasa ini memudahkan manipulasi kamus untuk pemula dan pembangun berpengalaman.

Memahami Membongkar Kamus

Bayangkan dua kamus:

  • first kamus: {"name": "Tim Bradford", "age": 35}
  • second kamus: {"city": "New York", "job": "Hollywood Actor"}

Untuk menggabungkannya, gunakan pembongkaran kamus dengan pengendali **:

<code class="language-python">combined = {**first, **second}
print(combined)

# Output: {'name': 'Tim Bradford', 'age': 35, 'city': 'New York', 'job': 'Hollywood Actor'}</code>

Ini menggabungkan kunci dan nilai secara elegan ke dalam satu kamus.

Kelebihan

Penggabungan Mudah: Sebelum Python 3.9, penggabungan diperlukan .update() atau gelung tersuai. Membongkar menawarkan penyelesaian yang lebih bersih dan ringkas.

Nilai Lalai Dipermudahkan: Gabungkan kamus utama dengan lalai:

<code class="language-python">defaults = {"theme": "dark", "language": "English"}
user_settings = {"language": "French"}

final_settings = {**defaults, **user_settings}
print(final_settings)

# Output: {'theme': 'dark', 'language': 'French'}</code>

Tetapan pengguna mengatasi lalai disebabkan oleh perintah pembongkaran.

Kebolehbacaan Dipertingkat: Kod Pythonic yang bersih meningkatkan kebolehselenggaraan dan kerjasama.

Mengendalikan Konflik Utama: Jika kamus berkongsi kunci:

<code class="language-python">a = {"key": "value1"}
b = {"key": "value2"}

result = {**a, **b}
print(result)

# Output: {'key': 'value2'}</code>

Nilai kamus paling kanan diutamakan. Pesanan adalah kunci!

Python 3.9 and Beyond: The | Operator

Python 3.9 memperkenalkan pengendali | untuk penggabungan yang lebih mudah:

<code class="language-python">merged = a | b
print(merged)</code>

Untuk penggabungan di tempat, gunakan |=:

<code class="language-python">a |= b
print(a)</code>

Ini secara langsung mengemas kini a.

Melebihi Penggabungan: Argumen Fungsi

Membuka kamus juga tidak ternilai apabila menyampaikan hujah:

<code class="language-python">def greet(name, age, topic, time):
    print(f"Hello, {name}! You are {age} years old. You are here to learn about {topic} at {time}.")

info = {"name": "Marko", "age": 30}
subject = {"topic": "Python", "time": "10:00 AM"}
greet(**info, **subject)

# Output: Hello, Marko! You are 30 years old. You are here to learn about Python at 10:00 AM.</code>

**info dan **subject buka kamus untuk memadankan parameter fungsi.

Kesimpulan

Pembukaan kamus ialah ciri Python yang berkuasa dan elegan. Ia memperkemas kod, meningkatkan kebolehbacaan dan menawarkan fleksibiliti. Kongsi helah kamus anda sendiri dalam komen! Selamat mengekod! ?

Atas ialah kandungan terperinci Membongkar Kamus dalam Python!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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