精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python的函數式編程介紹

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:了不起 ? 2023-09-27 16:54 ? 次閱讀

函數

回顧一下函數,函數就是把固定的邏輯放在一起,方便我們下次使用,不用寫重復的代碼,提升代碼的復用性以及可讀性;一個好的函數,可以只通過函數名就可以看懂這個過程要做什么,所以當我們有很大一段邏輯代碼的時候,拆成不同的函數,可以大大的提高代碼易讀性。

函數式編程

函數式編程,這里多了一個“式”,雖然也可以歸結到面向過程的程序設計,但其思想更接近數學計算。函數式編程的一個特點就是,允許把函數本身作為參數傳入另一個函數,還允許返回一個函數!

Python對函數式編程提供部分支持。由于Python允許使用變量,因此,Python不是純函數式編程語言。

函數作為參數

Python內建的filter()函數用于過濾序列。 filter()函數接收一個函數和一個序列作為參數,filter()把傳入的函數依次作用于每個元素,然后根據返回值是True還是False決定保留還是丟棄該元素。

def is_odd(n):
    return n % 2 == 1

list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))
# 結果: [1, 5, 9, 15]

把一個序列中的空字符串刪除的寫法:

def not_empty(s):
    return s and s.strip()

list(filter(not_empty, ['A', '', 'B', None, 'C', '  ']))
# 結果: ['A', 'B', 'C']

可見filter的用法突出一個“篩選”注意到filter()函數返回的是一個Iterator,也就是一個惰性序列,所以要強迫filter()完成計算結果,需要用list()函數獲得所有結果并返回list。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編程
    +關注

    關注

    88

    文章

    3592

    瀏覽量

    93596
  • 函數
    +關注

    關注

    3

    文章

    4306

    瀏覽量

    62431
  • python
    +關注

    關注

    56

    文章

    4782

    瀏覽量

    84453
收藏 人收藏

    評論

    相關推薦

    Golang函數編程簡述

    函數編程(Functional Programming / FP)作為一種編程范式,具有無狀態、無副作用、并發友好、抽象程度高等優點。目前流行的
    發表于 08-09 12:32 ?478次閱讀

    前端開發之函數編程實踐

    函數編程是一種編程范式,它將程序抽象為函數和數據結構,通過函數調用來實現程序的功能,并且
    發表于 06-05 10:19 ?443次閱讀
    前端開發之<b class='flag-5'>函數</b><b class='flag-5'>式</b><b class='flag-5'>編程</b>實踐

    函數編程思維

    函數編程思維
    發表于 09-07 14:57 ?7次下載
    <b class='flag-5'>函數</b><b class='flag-5'>式</b><b class='flag-5'>編程</b>思維

    現代C函數編程

    導讀:本文作者從介紹函數編程的概念入手,分析了函數編程
    發表于 09-30 16:43 ?2次下載

    函數編程的基本特性

    本文簡單介紹了一下函數編程的各種基本特性,希望能夠對于準備使用函數
    發表于 10-10 10:23 ?0次下載

    函數編程,性能,測試,編碼規范談Python

    這篇文章主要是對我收集的一些文章的摘要。因為已經有很多比我有才華的人寫出了大量關于如何成為優秀Python程序員的好文章。 我的總結主要集中在四個基本題目上:函數編程,性能,測試,編
    發表于 10-12 17:27 ?0次下載

    Python函數使用基礎教程

    Functional Programming(函數編程)的概念最早起源于LISP,由約翰·麥卡錫在1958年創立,最早提出了自動垃圾回收的理念,這一理念現在也被Python/Java
    發表于 11-15 19:05 ?1105次閱讀

    函數編程語言、編程和程序驗證

    函數編程是一種編程范型,它把計算看作是對數學函數的求值,避免了狀態和易變數據結構,函數是構造程
    發表于 04-03 11:01 ?3次下載

    Python函數文件與模塊的程序說明

    “探索Python ” 這一系列的前幾篇文章已為Python 編程新手介紹了幾方面的主題, 包括變量、容器對象和復合語句。本文以這些概念為基礎,構造一個完整的
    發表于 09-10 16:06 ?2次下載
    <b class='flag-5'>Python</b>的<b class='flag-5'>函數</b>文件與模塊的程序說明

    Python的Matplotlib函數匯總

    本文檔的主要內容詳細介紹的是Python的Matplotlib函數匯總免費下載。
    發表于 12-17 08:00 ?2次下載

    如何搭建Python編程環境

    Python是一種高級編程語言,被廣泛用于科學計算、數據分析、人工智能、Web開發等領域。想要學習Python編程,首先需要搭建一個合適的編程
    的頭像 發表于 04-14 12:07 ?5101次閱讀

    為什么Python沒有main函數

    今天的文章中,我們來討論一下為什么有的編程語言有main函數,而Python為什么沒有main函數
    發表于 08-17 11:47 ?306次閱讀

    python函數返回多個參數

    函數是程序設計中的一個重要概念,在很多編程語言中都存在。函數可以接受輸入數據,并且根據輸入數據進行一系列操作,最后可以返回一個或多個結果。Python是一種非常流行的
    的頭像 發表于 11-21 16:37 ?1192次閱讀

    python調用math函數的方法

    Python編程中,數學函數是非常重要的工具,我們可以使用它們進行各種數值計算、幾何運算和統計分析等操作。Python的標準庫中內置了很多數學函數
    的頭像 發表于 11-22 11:01 ?2806次閱讀

    不屬于python的內置函數

    Python是一種高級編程語言,它提供了許多內置函數,可以幫助開發人員更輕松地處理各種任務。但是,在Python中并非所有的函數都是內置
    的頭像 發表于 11-29 14:27 ?1390次閱讀