Rumah > Artikel > pembangunan bahagian belakang > Sembilan satu baris kod Python yang perlu anda ketahui dan ketahui
Apabila kami mula belajar Python, kami biasanya mengutamakan menulis kod yang menyelesaikan tugas, tanpa memberi perhatian kepada kebolehbacaan kod dan kesederhanaan dan kecekapan kod.
Tepatnya, ini tidak mengapa, tetapi terdapat cara untuk memendekkan kod Python kami tanpa menjejaskan kebolehbacaan. Baris tunggal kod Python, selagi kita boleh menggunakannya dengan betul, maka kita akan dapat mencapai kedua-dua kesederhanaan dan kebolehbacaan!
Berikut ialah 9 kod baris tunggal yang perlu diketahui oleh mana-mana pelajar yang belajar Python~
age = 18 valid = "You're an adult" invalid = "You're NOT an adult" print(valid) if age >= 18 else print(invalid)2 Buat senarai baharu berdasarkan senarai sedia ada Senarai ialah cara biasa untuk menyimpan data, tetapi anda tahu anda boleh membuat senarai baharu berdasarkan senarai sedia ada dengan. hanya satu baris kod? Ya, ia dipanggil pemahaman senarai dan ia menyediakan sintaks pendek untuk membuat senarai berdasarkan nilai senarai sedia ada pemahaman senarai lebih padat daripada fungsi dan gelung yang digunakan untuk membuat senarai. Ini sintaksnya:
[expression for item in list]Mari lihat contoh:
words = ['united states', 'brazil', 'united kingdom'] capitalized = [word.title() for word in words] >>> capitalized ['United States', 'Brazil', 'United Kingdom']Kod di atas memang kelihatan lebih baik! Tetapi ingat, kita harus memastikan kod tersebut mesra pengguna, jadi menulis pemahaman senarai panjang dalam satu baris kod tidak disyorkan. 3. Pemahaman kamus Serupa dengan pemahaman senarai, Python juga mempunyai pemahaman kamus. Pemahaman kamus menyediakan sintaks pendek untuk mencipta kamus dalam satu baris kod. Berikut ialah sintaks:
{key: value for key, value in iterable}Contoh:
dict_numbers = {x:x*x for x in range(1,6) } >>> dict_numbers {1: 1, 2: 4, 3: 9, 4: 16, 5:25}4 Cantumkan kamus Terdapat banyak cara untuk menggabungkan kamus. . Kita boleh menggunakan kaedah kemas kini(), operator merge(), dan juga pemahaman kamus. Tetapi terdapat cara yang lebih mudah untuk menggabungkan kamus dalam Python, iaitu dengan menggunakan operator pembongkaran **. Kami hanya perlu menambah ** di hadapan setiap kamus yang kami ingin gabungkan dan menggunakan kamus tambahan untuk menyimpan output.
dict_1 = {'a': 1, 'b': 2} dict_2 = {'c': 3, 'd': 4} merged_dict = {**dict_1, **dict_2} >>> merged_dict {'a': 1, 'b': 2, 'c': 3, 'd': 4}Selepas kami menggunakan operator ** pada kamus, kedua-duanya akan mengembangkan kandungannya dan bergabung untuk mencipta kamus baharu. 5 Alih keluar pendua dalam senarai Kadangkala kita perlu memastikan tiada nilai pendua dalam senarai, walaupun tiada cara untuk melakukannya dengan mudah, kita boleh menggunakan set untuk menghapuskan pendua. set ialah set tidak tertib di mana setiap elemen adalah unik. Ini bermakna jika kita menukar senarai menjadi satu set, kita boleh mengalih keluar pendua dengan cepat. Kemudian kita hanya perlu menukar set kepada senarai sekali lagi. Mari kita lihat contoh asas untuk memahaminya:
numbers = [1,1,1,2,2,3,4,5,6,7,7,8,9,9,9] >>> list(set(numbers)) [1, 2, 3, 4, 5, 6, 7, 8, 9]6. Menetapkan berbilang pembolehubah dalam satu baris Setiap kali kita perlu menetapkan berbilang pembolehubah , dalam Python anda boleh tetapkan mereka dalam satu baris dan bukannya baris demi baris (walaupun ia pembolehubah daripada jenis yang berbeza).
a, b, c = 1, "abc",True >>> a 1 >>> b 'abc' >>> c TrueIa sangat ringkas, tetapi perlu diingat bahawa semakin banyak pembolehubah yang kita tetapkan, semakin besar peluang untuk memberikannya kepada nilai yang salah~7 . Menapis nilai daripada senarai Katakan kita ingin menapis beberapa nilai daripada senarai, terdapat banyak cara untuk melakukan ini tetapi satu cara mudah ialah menggunakan fungsi penapis(). Ini ialah sintaks fungsi penapis:
filter(function, iterable)Jika kita menambah fungsi lambda dalam fungsi penapis, kesannya akan menjadi lebih baik! Mari kita atasinya dengan menapis nombor genap daripada senarai:
my_list = [10, 11, 12, 13, 14, 15] >>> list(filter(lambda x: x%2 == 0, my_list )) [10, 12, 14]8. Mengisih Kamus mengikut Kekunci Mengisih kamus bukanlah seperti mengisih senarai Mudah - kita tidak boleh mengisih kamus menggunakan sort() atau sorted() seperti yang kita boleh lakukan dengan senarai. Tetapi kita boleh menggabungkan pemahaman kamus dengan fungsi sorted() untuk mengisih kamus mengikut kekunci. Dalam contoh di bawah, kami akan mengisih kamus mengikut nama produk.
product_prices = {'Z': 9.99, 'Y': 9.99, 'X': 9.99} >>{key:product_prices[key] for key in sorted(product_prices.keys())} {'X': 9.99, 'Y': 9.99, 'Z': 9.99}9 Mengisih kamus mengikut nilai Sama seperti mengisih kamus mengikut kekunci, kita perlu menggunakan fungsi sorted() dan pemahaman senarai untuk mengisih kamus mengikut nilai, tetapi kita juga Fungsi lambda perlu ditambah. Mula-mula mari kita lihat semua parameter fungsi sorted():
sorted(iterable, key=None, reverse=False)Untuk mengisih kamus mengikut nilai, kita perlu menggunakan parameter utama. Parameter ini menerima fungsi yang digunakan sebagai kunci untuk perbandingan isihan. Di sini kita boleh menggunakan fungsi lambda untuk menjadikan perkara lebih mudah. Andaikan kami mempunyai kamus yang mengandungi nilai populasi dan kami ingin mengisihnya mengikut nilai.
population = {'USA':329.5, 'Brazil': 212.6, 'UK': 67.2} >>> sorted(population.items(), key=lambda x:x[1]) [('UK', 67.2), ('Brazil', 212.6), ('USA', 329.5)]Kini satu-satunya perkara yang tinggal ialah menambah terbitan kamus.
population = {'USA':329.5, 'Brazil': 212.6, 'UK': 67.2} >>> {k:v for k, v in sorted(population.items(), key=lambda x:x[1])} {'UK': 67.2, 'Brazil': 212.6, 'USA': 329.5}Baiklah, itu sahaja yang saya kongsikan hari ini.
Atas ialah kandungan terperinci Sembilan satu baris kod Python yang perlu anda ketahui dan ketahui. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!