Rumah pembangunan bahagian belakang Tutorial Python Cara menggunakan modul functools untuk pengaturcaraan berfungsi dalam Python 3.x

Cara menggunakan modul functools untuk pengaturcaraan berfungsi dalam Python 3.x

Jul 30, 2023 pm 04:41 PM
pengaturcaraan berfungsi python x functools

Modul functools Python sendiri menyediakan banyak fungsi alat untuk pengaturcaraan berfungsi. Ia boleh menjadikan kod lebih ringkas dan boleh dibaca, serta menyediakan beberapa fungsi tertib tinggi dan alatan asas untuk pengaturcaraan berfungsi. Artikel ini akan memperkenalkan beberapa fungsi biasa modul functools dan memberikan contoh kod. functools模块为函数式编程提供了许多工具函数。它可以使代码更加简洁、可读性更高,并且提供了一些高阶函数和函数式编程的基本工具。本文将介绍functools模块的几个常用函数,并提供代码示例。

  1. partial函数

partial函数用于部分应用一个函数,即固定函数的某些参数,返回一个新的函数。示例代码如下:

from functools import partial

def multiply(x, y):
    return x * y

double = partial(multiply, 2)
triple = partial(multiply, 3)

print(double(4))  # 输出8
print(triple(4))  # 输出12
Salin selepas log masuk

在上述代码中,partial函数将multiply函数的第一个参数固定为2或3,返回了新的函数doubletriple。当调用double函数时,实际上是调用了multiply(2, 4),返回了结果8。

  1. reduce函数

reduce函数用于对一个序列中的元素进行累积计算,返回一个单一的结果。需要通过from functools import reduce导入该函数。示例代码如下:

from functools import reduce

def add(x, y):
    return x + y

numbers = [1, 2, 3, 4, 5]

result = reduce(add, numbers)
print(result)  # 输出15
Salin selepas log masuk

在上述代码中,reduce函数将add函数应用于序列numbers中的元素,从左到右依次累积求和,返回最后的结果15。

  1. map函数

map函数用于对一个序列中的每个元素应用一个函数,并返回一个新的序列。示例代码如下:

def square(x):
    return x ** 2

numbers = [1, 2, 3, 4, 5]

squared_numbers = list(map(square, numbers))
print(squared_numbers)  # 输出[1, 4, 9, 16, 25]
Salin selepas log masuk

在上述代码中,map函数将square函数应用于序列numbers中的每个元素,并返回一个新的序列squared_numbers

  1. filter函数

filter函数用于对一个序列中的每个元素应用一个条件判断函数,返回满足条件的元素的新序列。示例代码如下:

def is_even(x):
    return x % 2 == 0

numbers = [1, 2, 3, 4, 5]

even_numbers = list(filter(is_even, numbers))
print(even_numbers)  # 输出[2, 4]
Salin selepas log masuk

在上述代码中,filter函数将is_even函数应用于序列numbers中的每个元素,并返回一个新的序列even_numbers,只包含满足条件的元素。

通过使用functools模块提供的函数,我们可以使用更简洁和可读性更高的代码实现函数式编程的思想。以上介绍的partialreducemapfilterfunctools

  1. fungsi separa
Fungsisepara digunakan untuk menggunakan sebahagian fungsi, iaitu, membetulkan beberapa parameter fungsi dan mengembalikan fungsi baharu. Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam kod di atas, fungsi separa membetulkan parameter pertama fungsi darab kepada 2 atau 3 dan mengembalikan fungsi baharu dua dan tiga. Apabila fungsi double dipanggil, darab(2, 4) sebenarnya dipanggil dan hasil 8 dikembalikan. 🎜
  1. reducefunction
🎜reduce fungsi digunakan untuk melakukan pengiraan terkumpul pada elemen dalam urutan , mengembalikan hasil tunggal. Fungsi ini perlu diimport melalui from functools import reduce. Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam kod di atas, fungsi reduce menggunakan fungsi add pada elemen dalam urutan nombor , dari kiri ke kanan Penjumlahan kumulatif dilakukan berturut-turut, dan hasil akhir 15 dikembalikan. 🎜
  1. map function
🎜map fungsi digunakan untuk digunakan pada setiap elemen dalam urutan A fungsi yang mengembalikan urutan baharu. Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam kod di atas, fungsi map menggunakan fungsi square untuk setiap elemen dalam urutan nombor dan mengembalikan urutan baharu nombor_persegi. 🎜
  1. fungsi penapis
🎜 Fungsipenapis digunakan untuk digunakan pada setiap elemen dalam urutan A fungsi pertimbangan bersyarat yang mengembalikan urutan elemen baharu yang memenuhi syarat. Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam kod di atas, fungsi filter menggunakan fungsi is_even untuk setiap elemen dalam urutan nombor dan mengembalikan urutan baharu nombor_genap, yang mengandungi hanya elemen yang memenuhi syarat. 🎜🎜Dengan menggunakan fungsi yang disediakan oleh modul functools, kami boleh melaksanakan idea pengaturcaraan berfungsi menggunakan kod yang lebih ringkas dan lebih mudah dibaca. separa, reduce, map dan filter yang diperkenalkan di atas adalah yang paling popular di kalangan functools kod> modul Fungsi yang biasa digunakan boleh digunakan dalam projek sebenar. 🎜

Atas ialah kandungan terperinci Cara menggunakan modul functools untuk pengaturcaraan berfungsi dalam Python 3.x. 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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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)

Menguasai pengaturcaraan berfungsi dan ungkapan Lambda dalam bahasa Go Menguasai pengaturcaraan berfungsi dan ungkapan Lambda dalam bahasa Go Nov 30, 2023 am 10:46 AM

Dalam dunia pengaturcaraan kontemporari, Pengaturcaraan Fungsian (FP) secara beransur-ansur menjadi paradigma pengaturcaraan yang popular. Ia menekankan penggunaan fungsi sebagai blok binaan asas untuk membina program, dan menganggap proses pengiraan sebagai pemindahan dan penukaran berterusan antara fungsi. Dalam beberapa tahun kebelakangan ini, bahasa Go (juga dikenali sebagai Golang) secara beransur-ansur telah digunakan secara meluas dalam pelbagai bidang kerana kesederhanaan, kecekapan, keselamatan serentak dan ciri-ciri lain. Walaupun bahasa Go itu sendiri bukanlah bahasa pengaturcaraan yang berfungsi semata-mata, ia menyediakan kefungsian yang mencukupi.

Cara menggunakan modul matematik untuk melaksanakan operasi matematik dalam Python 3.x Cara menggunakan modul matematik untuk melaksanakan operasi matematik dalam Python 3.x Aug 01, 2023 pm 03:15 PM

Cara menggunakan modul matematik untuk melaksanakan operasi matematik dalam Python 3.x Pengenalan: Dalam pengaturcaraan Python, melaksanakan operasi matematik adalah keperluan biasa. Untuk memudahkan pemprosesan operasi matematik, Python menyediakan perpustakaan matematik, yang mengandungi banyak fungsi dan pemalar untuk pengiraan matematik dan fungsi matematik. Artikel ini akan memperkenalkan cara menggunakan modul matematik untuk melaksanakan operasi matematik biasa dan menyediakan contoh kod yang sepadan. 1. Penambahan operasi matematik asas dilakukan menggunakan fungsi math.add() dalam modul matematik.

Cara menggunakan fungsi urllib.parse.unquote() untuk menyahkod URL dalam Python 3.x Cara menggunakan fungsi urllib.parse.unquote() untuk menyahkod URL dalam Python 3.x Aug 02, 2023 pm 02:25 PM

Cara menggunakan fungsi urllib.parse.unquote() untuk menyahkod URL dalam Python 3.x Dalam perpustakaan urllib Python, modul urllib.parse menyediakan satu siri fungsi alat untuk pengekodan dan penyahkodan URL, antaranya urllib.parse.unquote. () Fungsi boleh digunakan untuk menyahkod URL. Artikel ini akan memperkenalkan cara menggunakan urllib.parse.un

Teknik pengaturcaraan berfungsi dalam C++ Teknik pengaturcaraan berfungsi dalam C++ Aug 22, 2023 am 10:36 AM

Terdapat banyak teknik pengaturcaraan yang sangat baik dalam bahasa C++, antaranya pengaturcaraan berfungsi adalah teknologi yang sangat praktikal. Pengaturcaraan fungsian menekankan kebolehgunaan semula dan fleksibiliti fungsi, yang boleh menjadikan kod lebih jelas dan boleh diselenggara. Dalam artikel ini, kami akan memperkenalkan teknik pengaturcaraan berfungsi dalam C++. 1. Objek fungsi Objek fungsi ialah objek boleh dipanggil, yang boleh dianggap sebagai fungsi. Objek fungsi dalam C++ boleh menjadi objek kelas atau penunjuk fungsi. Objek fungsi boleh digunakan dalam algoritma STL dan juga boleh digunakan sebagai parameter fungsi lain. Berikut adalah ringkasnya

Apakah faedah menggunakan ungkapan lambda C++ untuk pengaturcaraan berfungsi? Apakah faedah menggunakan ungkapan lambda C++ untuk pengaturcaraan berfungsi? Apr 17, 2024 am 10:18 AM

Ekspresi lambda C++ membawa kelebihan kepada pengaturcaraan berfungsi, termasuk: Kesederhanaan: Fungsi sebaris tanpa nama meningkatkan kebolehbacaan kod. Penggunaan semula kod: Ungkapan Lambda boleh dihantar atau disimpan untuk memudahkan penggunaan semula kod. Enkapsulasi: Menyediakan cara untuk merangkum sekeping kod tanpa mencipta fungsi berasingan. Kes praktikal: menapis nombor ganjil dalam senarai. Kira jumlah unsur dalam senarai. Ekspresi Lambda mencapai kesederhanaan, kebolehgunaan semula dan enkapsulasi pengaturcaraan berfungsi.

Bagaimana untuk mengoptimumkan program berfungsi Golang menggunakan penilaian malas? Bagaimana untuk mengoptimumkan program berfungsi Golang menggunakan penilaian malas? Apr 16, 2024 am 09:33 AM

Penilaian malas boleh dilaksanakan dalam Go dengan menggunakan struktur data malas: mencipta jenis pembalut yang merangkum nilai sebenar dan hanya menilainya apabila diperlukan. Optimumkan pengiraan jujukan Fibonacci dalam program berfungsi, menangguhkan pengiraan nilai perantaraan sehingga benar-benar diperlukan. Ini boleh menghapuskan overhed yang tidak perlu dan meningkatkan prestasi program berfungsi.

Cara menggunakan modul pdb untuk penyahpepijatan kod dalam Python 2.x Cara menggunakan modul pdb untuk penyahpepijatan kod dalam Python 2.x Aug 01, 2023 pm 12:05 PM

Cara menggunakan modul pdb untuk penyahpepijatan kod dalam Python2.x Pengenalan: Semasa proses pembangunan perisian, kita sering menghadapi masalah seperti ralat program, nilai pembolehubah yang tidak memenuhi jangkaan, atau hasil yang tidak dijangka. Untuk menyelesaikan masalah ini, kita perlu nyahpepijat kod. Python menyediakan modul pdb (Pythondebugger) yang berkuasa, yang boleh membantu kami mencari masalah dan nyahpepijat dengan cepat. Artikel ini akan memperkenalkan cara menggunakan modul pdb untuk penyahpepijatan kod dalam Python2.x, dan lampirkan

Pengaturcaraan Fungsian dalam C++ Soalan Temuduga Soalan Lazim Pengaturcaraan Fungsian dalam C++ Soalan Temuduga Soalan Lazim Aug 22, 2023 pm 05:28 PM

Dengan aplikasi C++ yang meluas dalam bidang komputer dan penerokaan berterusan paradigma pengaturcaraan, pengaturcaraan berfungsi juga telah menjadi topik yang sangat membimbangkan. Dalam C++, pengaturcaraan berfungsi mempunyai banyak konsep dan sintaks khas, jadi soalan berkaitan sering terlibat dalam temu bual. Artikel ini meringkaskan dan menjawab soalan temu bual biasa tentang pengaturcaraan berfungsi dalam C++. 1. Kelebihan dan Kelemahan Pengaturcaraan Fungsian Penemuduga mungkin bertanya kepada anda tentang pemahaman anda tentang kelebihan dan kekurangan pengaturcaraan berfungsi. Pengaturcaraan fungsional mempunyai kelebihan berikut: Kebolehbacaan tinggi. Pengaturcaraan fungsional hanya menumpukan pada output fungsi

See all articles