Rumah >pembangunan bahagian belakang >Tutorial Python >Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

WBOY
WBOYke hadapan
2022-05-23 18:40:362037semak imbas

Artikel ini membawakan anda pengetahuan yang berkaitan tentang python Terutamanya ia memperkenalkan isu berkaitan tentang fungsi terbina dalam, terutamanya dengan enam fungsi yang sangat mudah digunakan, termasuk Lambda dan peta , penapis, dan senaraikan fungsinya Mari kita lihat bersama-sama.

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Pembelajaran yang disyorkan: tutorial video python

Fungsi Lambda

Lambda fungsi digunakan untuk mencipta tanpa nama functions , iaitu fungsi tanpa nama. Ia hanyalah ungkapan, dan badan fungsi adalah lebih mudah daripada def. Fungsi tanpa nama digunakan apabila kita perlu mencipta fungsi yang menjalankan satu operasi dan boleh ditulis dalam satu baris.

lambda [arg1 [,arg2,.....argn]]:expression

Isi badan lambda ialah ungkapan, bukan blok kod. Hanya logik terhad boleh dirangkumkan dalam ungkapan lambda. Contohnya:

lambda x: x+2

Jika kita juga mahu memanggil fungsi yang ditakrifkan oleh def pada bila-bila masa, kita boleh menetapkan lambda函数 kepada objek fungsi sedemikian.

add2 = lambda x: x+2add2(10)

Hasil keluaran:

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Menggunakan fungsi Lambda, kod boleh dipermudahkan dengan banyak.

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Seperti yang ditunjukkan dalam rajah di atas, senarai hasil newlist dijana dengan satu baris kod menggunakan fungsi lambda.

Fungsi peta Fungsi

map() memetakan fungsi kepada semua elemen senarai input.

map(function,iterable)

Sebagai contoh, kita mula-mula mencipta fungsi untuk mengembalikan perkataan input huruf besar, dan kemudian menggunakan fungsi ini pada semua elemen dalam senarai colors.

def makeupper(word):
    return word.upper()colors=['red','yellow','green','black']colors_uppercase=list(map(makeupper,colors))colors_uppercase

Selain itu, kami juga boleh menggunakan 匿名函数lambda untuk bekerjasama dengan fungsi peta, yang boleh lebih diperkemas.

colors=['red','yellow','green','black']colors_uppercase=list(map(lambda x: x.upper(),colors))colors_uppercase

Jika kita tidak menggunakan fungsi Map, kita perlu menggunakan gelung for.

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Seperti yang ditunjukkan dalam rajah di atas, dalam penggunaan sebenar, fungsi Peta akan menjadi 1.5 kali lebih pantas daripada kaedah gelung for untuk menyenaraikan elemen secara berurutan .

Mengurangkan fungsi

Apabila anda perlu melakukan beberapa pengiraan pada senarai dan mengembalikan hasilnya, reduce() ialah fungsi yang sangat berguna. Sebagai contoh, apabila anda perlu mengira hasil darab semua elemen senarai integer, anda boleh menggunakan fungsi pengurangan. [1]

Perbezaan terbesar antaranya dan fungsi ialah fungsi (fungsi) pemetaan dalam reduce() menerima dua parameter, manakala peta menerima satu parameter.

reduce(function, iterable[, initializer])

Seterusnya kami menggunakan contoh untuk menunjukkan proses pelaksanaan kod reduce().

from functools import reducedef add(x, y) :   # 两数相加
    return x + y
numbers = [1,2,3,4,5]sum1 = reduce(add, numbers)   # 计算列表和

Dapatkan hasilnyasum1 = 15

Kita akan lihat pengurangan menggunakan fungsi penambahan add() pada senarai [1,2,3,4,5] , pemetaan fungsi menerima dua parameter, reduce() dan terus mengumpul hasil dengan elemen seterusnya dalam senarai .

Selain itu, kita juga boleh menggunakan 匿名函数lambda untuk memadankan fungsi pengurangan, yang boleh lebih diperkemas.

from functools import reducenumbers = [1,2,3,4,5]sum2 = reduce(lambda x, y: x+y, numbers)

mendapat output sum2= 15, yang konsisten dengan hasil sebelumnya.

Nota: Bermula dari Python 3.x, reduce() telah dialihkan ke modul functools [2]. Jika kita mahu menggunakannya, kita perlu mengimportnya dengan from functools import reduce.

fungsi enumerate

enumerate() fungsi digunakan untuk menggabungkan objek data yang boleh dilalui (seperti senarai, tuple atau rentetan) ke dalam urutan indeks dan menyenaraikan data dan subskrip data pada masa yang sama Ia biasanya digunakan dalam dalam gelung untuk. Sintaksnya adalah seperti berikut:

enumerate(iterable, start=0)

Dua parameternya, satu ialah jujukan, lelaran atau objek lain yang menyokong lelaran, satu lagi ialah kedudukan permulaan subskrip, yang bermula dari 0 secara lalai, juga Nombor permulaan kaunter boleh disesuaikan.

colors = ['red', 'yellow', 'green', 'black']result = enumerate(colors)

Jika kita mempunyai senarai warna yang menyimpan warna, kita akan mendapat objek enumerate selepas menjalankannya. Ia boleh digunakan secara terus dalam gelung untuk atau ditukar kepada senarai Penggunaan khusus adalah seperti berikut.

for count, element in result:
    print(f"迭代编号:{count},对应元素:{element}")

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Fungsi zip

zip() fungsi digunakan untuk mengambil objek boleh lelar sebagai parameter dan membungkus elemen yang sepadan dalam objek ke dalam individu tupel dan kemudian mengembalikan senarai yang terdiri daripada tupel ini [3].

Kami masih menggunakan dua senarai sebagai contoh:

colors = ['red', 'yellow', 'green', 'black']fruits = ['apple', 'pineapple', 'grapes', 'cherry']for item in zip(colors,fruits):
    print(item)

Hasil keluaran:

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Apabila kami menggunakan fungsi zip() , jika bilangan elemen dalam setiap lelaran tidak konsisten, panjang senarai yang dikembalikan adalah sama dengan objek terpendek.

prices =[100,50,120]for item in zip(colors,fruits,prices):
    print(item)

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan

Filter 函数

filter()函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表,其语法如下所示[4]。

filter(function, iterable)

比如举个例子,我们可以先创建一个函数来检查单词是否为大写,然后使用filter()函数过滤出列表中的所有奇数:

def is_odd(n):
    return n % 2 == 1old_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    new_list = filter(is_odd, old_list)print(newlist)

输出结果:

Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan


今天分享的这6个内置函数,在使用 Python 进行数据分析或者其他复杂的自动化任务时非常方便。

推荐学习:python视频教程

Atas ialah kandungan terperinci Memperkenalkan enam fungsi terbina dalam Python yang sangat mudah digunakan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:Faedah lekukan dan ruang pythonArtikel seterusnya:Faedah lekukan dan ruang python