


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

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara Menggunakan Python untuk Mencari Pengagihan Zipf Fail Teks

Bagaimana saya menggunakan sup yang indah untuk menghuraikan html?

Cara Bekerja Dengan Dokumen PDF Menggunakan Python

Cara Cache Menggunakan Redis dalam Aplikasi Django

Memperkenalkan Toolkit Bahasa Alam (NLTK)

Bagaimana untuk melakukan pembelajaran mendalam dengan Tensorflow atau Pytorch?
