Rumah pembangunan bahagian belakang Tutorial Python Mengoptimumkan Kod Anda dengan Operator Walrus Python: Contoh Dunia Sebenar dan Anti-Corak untuk Dielakkan

Mengoptimumkan Kod Anda dengan Operator Walrus Python: Contoh Dunia Sebenar dan Anti-Corak untuk Dielakkan

Aug 18, 2024 am 06:01 AM

Optimizing Your Code with Python

Pengenalan:
Pengendali walrus, yang diperkenalkan dalam Python 3.8, ialah alat yang berguna untuk pembangun untuk memudahkan dan mengoptimumkan kod mereka. Ia membenarkan penugasan pembolehubah dalam ungkapan, menjadikannya pendekatan yang lebih ringkas dan cekap untuk pengaturcaraan. Walau bagaimanapun, seperti mana-mana alat, ia harus digunakan secara sederhana dan dengan pertimbangan yang baik. Dalam tutorial ini, kami akan meneroka contoh dunia sebenar penggunaan operator walrus dan menyerlahkan beberapa anti-corak untuk dielakkan.

Contoh Penggunaan Operator Walrus di Dunia Sebenar:
1. Mempermudahkan Pernyataan Bersyarat
Salah satu kes penggunaan yang paling biasa untuk pengendali walrus adalah untuk memudahkan pernyataan bersyarat. Katakan kita mempunyai fungsi yang mengembalikan panjang rentetan dan kita ingin menyemak sama ada panjangnya lebih besar daripada 10. Menggunakan pengendali walrus, kita boleh menetapkan panjang berubah terus dalam pernyataan bersyarat, menjimatkan baris kod.

Contoh pernyataan bersyarat tanpa pengendali walrus

panjang = len(rentetan)
jika panjang > 10:
print("String lebih panjang daripada 10 aksara.")

Contoh menggunakan operator walrus

jika (panjang := len(rentetan)) > 10:
print("String lebih panjang daripada 10 aksara.")

2. Mengelakkan Panggilan Fungsi Berulang
Dalam sesetengah kes, menggunakan operator walrus boleh meningkatkan prestasi kod kami dengan mengelakkan panggilan fungsi berulang. Dalam contoh berikut, kami ingin mengira gred purata pelajar, tetapi kita juga perlu menyemak sama ada pelajar itu telah lulus kelas. Tanpa pengendali walrus, kita perlu memanggil fungsi itu dua kali, tetapi dengan itu, kita boleh menetapkan hasil fungsi kepada pembolehubah dan menggunakannya dalam kedua-dua pernyataan bersyarat dan pengiraan.

Contoh tanpa pengendali walrus

gred1 = gred_kira(pelajar, ujian1)
gred2 = gred_kira(pelajar, ujian2)
jika (gred1 + gred2) / 2 >= 70:
print("Pelajar telah lulus kelas.")

jika ((gred1 := gred_kira(pelajar, ujian1)) + (gred2:= gred_kira(pelajar, ujian2))) / 2 >= 70:
print("Pelajar telah lulus kelas.")

3. Memudahkan Pemahaman Senarai
Pemahaman senarai ialah alat yang berkuasa untuk memanipulasi dan menapis data dalam senarai. Walau bagaimanapun, pemahaman senarai yang kompleks boleh menjadi sukar untuk dibaca dan dikekalkan. Menggunakan pengendali walrus boleh memudahkan pemahaman ini dengan membenarkan kami menetapkan pembolehubah dalam ungkapan.

Contoh pemahaman senarai tanpa pengendali walrus

hasil = [untung_kira(jualan, kos) untuk jualan, kos dalam data_jualan jika untung_kira(jualan, kos) > 50]

Contoh menggunakan operator walrus

hasil = [(keuntungan := kira_keuntungan(jualan, kos)) untuk jualan, kos dalam data_jualan jika untung > 50]

Anti-Corak: Cara Tidak Menggunakan Operator Walrus:
1. Pemahaman Senarai Kompleks
Walaupun pengendali walrus boleh memudahkan pemahaman senarai, penggunaan yang berlebihan boleh menyebabkan kod yang rumit dan tidak boleh dibaca. Dalam anti-corak ini, kami melihat pemahaman senarai dengan berbilang syarat dan tugasan bersarang. Ini boleh menjadi sukar untuk dibaca dan diselenggara, dan lebih baik pecahkan logik kepada langkah yang berasingan.

Contoh pemahaman senarai yang tidak kemas dengan pengendali walrus bersarang

data_jualan = [(100, 70), (200, 150), (150, 100), (300, 200)]
keputusan = [(jualan, kos, keuntungan, nisbah_jualan) untuk jualan, kos dalam data_jualan jika (keuntungan := kira_keuntungan(jualan, kos)) > 50
jika (nisbah_jualan := jualan / kos) > 1.5 jika (margin_keuntungan := (keuntungan / jualan)) > 0.2]

2. Operator Walrus Bersarang
Menggunakan operator walrus bersarang boleh menghasilkan kod yang sukar dibaca dan difahami. Dalam contoh ini, kita melihat pengendali bersarang dalam satu ungkapan, menjadikannya mencabar untuk membongkar logik dan memahami kod. Adalah lebih baik untuk memecahkan logik kepada berbilang baris untuk kebolehbacaan dan kebolehselenggaraan yang lebih baik.

Contoh pengendali walrus bersarang

nilai = [5, 15, 25, 35, 45]
ambang = 20
keputusan = []
untuk nilai dalam nilai:
jika (above_threshold := value > threshold) dan (incremented := (new_value := value + 10) > 30):
results.append(new_value)
cetak(hasil)

Conclusion :
L'opérateur Walrus est un outil puissant pour simplifier et optimiser le code, mais il doit être utilisé avec prudence. En comprenant ses capacités et ses limites, nous pouvons l'utiliser efficacement dans notre code et éviter les anti-modèles courants.

Les tests pratiques de certification Python de MyExamCloud sont un outil utile pour ceux qui se préparent à toute certification Python.

Atas ialah kandungan terperinci Mengoptimumkan Kod Anda dengan Operator Walrus Python: Contoh Dunia Sebenar dan Anti-Corak untuk Dielakkan. 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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail Teks Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail Teks Mar 05, 2025 am 09:58 AM

Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail Teks

Cara memuat turun fail di python Cara memuat turun fail di python Mar 01, 2025 am 10:03 AM

Cara memuat turun fail di python

Penapisan gambar di python Penapisan gambar di python Mar 03, 2025 am 09:44 AM

Penapisan gambar di python

Bagaimana saya menggunakan sup yang indah untuk menghuraikan html? Bagaimana saya menggunakan sup yang indah untuk menghuraikan html? Mar 10, 2025 pm 06:54 PM

Bagaimana saya menggunakan sup yang indah untuk menghuraikan html?

Cara Bekerja Dengan Dokumen PDF Menggunakan Python Cara Bekerja Dengan Dokumen PDF Menggunakan Python Mar 02, 2025 am 09:54 AM

Cara Bekerja Dengan Dokumen PDF Menggunakan Python

Cara Cache Menggunakan Redis dalam Aplikasi Django Cara Cache Menggunakan Redis dalam Aplikasi Django Mar 02, 2025 am 10:10 AM

Cara Cache Menggunakan Redis dalam Aplikasi Django

Memperkenalkan Toolkit Bahasa Alam (NLTK) Memperkenalkan Toolkit Bahasa Alam (NLTK) Mar 01, 2025 am 10:05 AM

Memperkenalkan Toolkit Bahasa Alam (NLTK)

Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch? Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch? Mar 10, 2025 pm 06:52 PM

Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch?

See all articles