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

對(duì)Python 函數(shù)編程技巧說(shuō)明介紹

開發(fā) 后端
在Python 函數(shù)中的模塊進(jìn)行搜索測(cè)試并嘗試運(yùn)行它們,它們使這個(gè)測(cè)試文件可以獨(dú)立于項(xiàng)目范圍的測(cè)試腳本單獨(dú)運(yùn)行。

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

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

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

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

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

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

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

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

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

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

【編輯推薦】

  1. 有關(guān)Python系統(tǒng)文件進(jìn)行介紹指導(dǎo)
  2. 如何正確的使用Python函數(shù)
  3. 對(duì)Python 構(gòu)建工具進(jìn)行詳細(xì)介紹分析
  4. PythonAndroid淺析Python優(yōu)勢(shì)所在
  5. 如何使用Python模塊解析配置文件?
責(zé)任編輯:chenqingxiang 來(lái)源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-02-22 11:14:43

Python編寫

2010-02-26 10:07:55

Python編程語(yǔ)言

2010-02-02 13:28:46

Python變量

2010-01-12 17:33:06

C++

2010-02-02 14:42:38

Python線程

2010-03-01 13:13:02

Python應(yīng)用線程

2010-02-23 16:32:14

Python編程

2010-02-26 13:56:08

Python RSS

2010-02-03 09:35:20

Python函數(shù)編程

2010-01-25 18:19:17

C++特性

2009-12-08 16:09:02

WCF消息

2009-12-21 10:01:05

Oracle技術(shù)

2010-01-25 18:19:17

C++特性

2010-01-25 18:19:17

C++特性

2010-01-28 16:05:09

C++風(fēng)格與技巧

2010-03-17 16:50:51

2009-12-16 14:51:27

Visual Stud

2010-03-05 13:34:54

2010-01-15 19:34:25

C++設(shè)計(jì)

2010-01-14 13:39:45

Visual C++優(yōu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 中文字幕一区二区三区四区五区 | 不卡一区二区在线观看 | 日韩一区二区三区在线观看视频 | 一级黄色片免费在线观看 | 7777久久| www.激情.com| 成人国产精品免费观看 | 91久久久久久 | 麻豆国产精品777777在线 | 午夜视频一区二区 | 久久久高清 | 99国产精品久久久 | 日韩中文字幕免费在线 | 九色porny自拍视频 | 久久亚洲精品国产精品紫薇 | 国产在线观看福利 | 米奇成人网| 欧美一区二区三区视频在线观看 | 巨大荫蒂视频欧美另类大 | 久久丝袜 | 国产成人99久久亚洲综合精品 | 国产精久久久久久久 | 亚洲视频欧美视频 | 国产成人久久精品一区二区三区 | 亚洲狠狠爱一区二区三区 | 视频精品一区二区三区 | 日韩伦理一区二区 | 国产精品久久一区 | 免费看a| 久久精品免费观看 | 国内精品久久久久久 | 91精品国产综合久久香蕉麻豆 | 国产精品精品3d动漫 | 国产欧美精品一区二区 | 欧美性一区二区三区 | heyzo在线| 国产成人免费网站 | 国产精品黄视频 | 美女久久久 | 国产h视频 | 中文字幕免费在线观看 |