成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

對Python 函數編程技巧說明介紹

開發 后端
在Python 函數中的模塊進行搜索測試并嘗試運行它們,它們使這個測試文件可以獨立于項目范圍的測試腳本單獨運行。

可以把Python語言看作是一個過程性和面向對象的語言,但它包含了函數里面的所有內容,下文不但討論了函數編程的常規概念,還說明了在 Python 中實現Python 函數的技術方法。

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

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

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

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

函數編程的提倡者認為所有這些特征都導致更快速的開發更短以及錯誤更少的代碼。而且,計算機科學、邏輯和數學領域的高級理論學家發現證明函數語言和程序的正式性能比命令語言和程序容易得多。

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

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

Python 函數為這一目的提供了改進的語法。可能讓人吃驚,但很少的這幾個函數(以及基本運算符)幾乎足以編寫任何 Python程序;特別是,所有的流控制語句(if、elif、 else、assert、try 、except、finally、for、 break、continue、while、def)可以只使用 FP 函數和運算符以函數風格處理。

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

【編輯推薦】

  1. 有關Python系統文件進行介紹指導
  2. 如何正確的使用Python函數
  3. Python 構建工具進行詳細介紹分析
  4. PythonAndroid淺析Python優勢所在
  5. 如何使用Python模塊解析配置文件?
責任編輯:chenqingxiang 來源: 互聯網
相關推薦

2010-02-22 11:14:43

Python編寫

2010-02-26 10:07:55

Python編程語言

2010-02-02 13:28:46

Python變量

2010-02-02 14:42:38

Python線程

2010-03-01 13:13:02

Python應用線程

2010-01-12 17:33:06

C++

2010-02-23 16:32:14

Python編程

2010-02-26 13:56:08

Python RSS

2010-02-03 09:35:20

Python函數編程

2010-01-25 18:19:17

C++特性

2009-12-08 16:09:02

WCF消息

2009-12-21 10:01:05

Oracle技術

2010-01-25 18:19:17

C++特性

2010-01-25 18:19:17

C++特性

2010-01-28 16:05:09

C++風格與技巧

2010-03-17 16:50:51

2010-01-15 19:34:25

C++設計

2009-12-16 14:51:27

Visual Stud

2010-03-05 13:34:54

2010-01-14 13:39:45

Visual C++優
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩综合 | 久久精品亚洲欧美日韩精品中文字幕 | 国产一区二区三区日韩 | 免费av手机在线观看 | 老外黄色一级片 | 91久久国产综合久久 | 久草视频观看 | 国产日韩久久 | 欧美久久一区二区 | 青青草视频网站 | www.男人天堂.com | 91精品国产91综合久久蜜臀 | 欧美日韩久久久 | 一级特黄网站 | 国产精品久久久久久久久污网站 | 亚洲成人在线视频播放 | av在线播放网 | 久久精品播放 | 日韩电影在线 | 久久成人精品视频 | 亚洲久草视频 | 99热在这里只有精品 | 91精品久久久久久久久中文字幕 | 成人毛片在线视频 | 91久久综合亚洲鲁鲁五月天 | 天堂久久久久久久 | 在线播放中文字幕 | 成年人的视频免费观看 | 亚洲一区二区三区在线 | 国产成人综合在线 | 亚洲一区二区在线 | 欧美一级在线观看 | 99成人精品 | 久久精品国产精品青草 | 免费观看av | 麻豆一区一区三区四区 | 91高清免费 | 国产精品免费一区二区三区四区 | 亚洲精品久久久久久久久久吃药 | 在线免费观看一区二区 | 国产激情视频在线观看 |