日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
對Python 函數(shù)編程技巧說明介紹

可以把Python語言看作是一個過程性和面向?qū)ο蟮恼Z言,但它包含了函數(shù)里面的所有內(nèi)容,下文不但討論了函數(shù)編程的常規(guī)概念,還說明了在 Python 中實現(xiàn)Python 函數(shù)的技術(shù)方法。

創(chuàng)新互聯(lián)是一家專業(yè)提供岑鞏企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、H5頁面制作、小程序制作等業(yè)務(wù)。10年已為岑鞏眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。

我們最好從最難的問題開始:“到底什么是函數(shù)編程 (FP)?”一個答案可能會說 FP 就是您在使用例如 Lisp、Scheme、Haskell、ML、OCAML、Clean、Mercury、Erlang(或其它一些)語言進(jìn)行編程時所做的。這是一個穩(wěn)妥的答案,但不能很確切地闡明問題。不幸的是,即使是函數(shù)程序員他們自己也很難對 FP 究竟是什么有個一致的認(rèn)識。

“盲人摸象”的故事用來形容這一情況似乎很合適。還可以放心地將 FP 與“命令編程”(使用例如 C、Pascal、C++、Java、Perl、Awk、TCL 以及其它大多數(shù)語言所執(zhí)行的操作,至少是在很大程度上)進(jìn)行對比。

從個人角度來說,我會將函數(shù)編程粗略地描繪為至少具有以下幾個特征。稱得上函數(shù)性的語言使這些事情變得簡單,而使其它事情變得困難或不可能:函數(shù)是第一類(對象)。即,可以對“數(shù)據(jù)”進(jìn)行的每樣操作都可以使用函數(shù)本身做到(例如將一個函數(shù)傳遞給另一個函數(shù))。

◆將遞歸用作主要的控制結(jié)構(gòu)。在某些語言中,不存在其它“循環(huán)”構(gòu)造。
◆重點(diǎn)集中在列表 LISt 處理(例如,名稱 Lisp)。列表經(jīng)常和子列表的遞歸一起使用以替代循環(huán)。
◆“純”函數(shù)語言能夠避免副作用。這不包括在命令語言中最普遍的模式,即指定第一個,然后將另一個值指定給同一個變量來跟蹤程序狀態(tài)。
◆FP 不鼓勵或根本不允許出現(xiàn)語句,取而代之是使用表達(dá)式求值(換句話說,即函數(shù)加上自變量)。在很純粹的情況下,一個程序就是一個表達(dá)式(加上支持的定義)。
◆FP 關(guān)心的是計算什么而不是如何計算。
◆許多 FP 利用了“更高等級”函數(shù)(換句話說,就是函數(shù)對一些函數(shù)操作,而這些函數(shù)又對其它函數(shù)操作)。

函數(shù)編程的提倡者認(rèn)為所有這些特征都導(dǎo)致更快速的開發(fā)更短以及錯誤更少的代碼。而且,計算機(jī)科學(xué)、邏輯和數(shù)學(xué)領(lǐng)域的高級理論學(xué)家發(fā)現(xiàn)證明函數(shù)語言和程序的正式性能比命令語言和程序容易得多。

固有的 Python 函數(shù)能力自從 Python 1.0 以來,Python 具有上面列出的大多數(shù) FP 特征。但對于大多數(shù) Python 特性,它們以一種非?;旌系恼Z言呈現(xiàn)。很大程度上是因為 Python 函數(shù)的 OOP 特性,您可以使用希望使用的部分而忽略其余部分(直到在稍后需要它為止)。

使用 Python 2.0,列表內(nèi)涵添加了一些非常棒的“句法上的粉飾”。雖然列表內(nèi)涵沒有添加什么新的能力,但它們使許多舊的能力看起來好了 許多。Python 中 FP 的基本元素是函數(shù) map()、reduce() 和 filter(),以及運(yùn)算符 lambda。在 Python 1.x 中,apply() 函數(shù)對于將一個函數(shù)的列表返回值直接應(yīng)用于另一個函數(shù)也很方便。

Python 函數(shù)為這一目的提供了改進(jìn)的語法??赡茏屓顺泽@,但很少的這幾個函數(shù)(以及基本運(yùn)算符)幾乎足以編寫任何 Python程序;特別是,所有的流控制語句(if、elif、 else、assert、try 、except、finally、for、 break、continue、while、def)可以只使用 FP 函數(shù)和運(yùn)算符以函數(shù)風(fēng)格處理。

雖然實際上消除程序中的所有流控制命令可能只對加入“混亂的 Python”競爭(與看上去非常象 Lisp 的代碼)有用,但是理解 FP 是如何使用函數(shù)和遞歸來表示流控制是值得的。

【編輯推薦】

  1. 有關(guān)Python系統(tǒng)文件進(jìn)行介紹指導(dǎo)
  2. 如何正確的使用Python函數(shù)
  3. 對Python 構(gòu)建工具進(jìn)行詳細(xì)介紹分析
  4. PythonAndroid淺析Python優(yōu)勢所在
  5. 如何使用Python模塊解析配置文件?

當(dāng)前題目:對Python 函數(shù)編程技巧說明介紹
標(biāo)題來源:http://www.dlmjj.cn/article/cdpdihh.html