国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

跟老齊學(xué)Python之大話題小函數(shù)(1)

2020-02-23 06:04:25
字體:
供稿:網(wǎng)友

開篇就要提到一個(gè)大的話題:編程范型。什么是編程范型?引用維基百科中的解釋:
代碼如下:
編程范型或編程范式(英語:Programming paradigm),(范即模范之意,范式即模式、方法),是一類典型的編程風(fēng)格,是指從事軟件工程的一類典型的風(fēng)格(可以對(duì)照方法學(xué))。如:函數(shù)式編程、程序編程、面向?qū)ο缶幊獭⒅噶钍骄幊痰鹊葹椴煌木幊谭缎汀?/p>

編程范型提供了(同時(shí)決定了)程序員對(duì)程序執(zhí)行的看法。例如,在面向?qū)ο缶幊讨校绦騿T認(rèn)為程序是一系列相互作用的對(duì)象,而在函數(shù)式編程中一個(gè)程序會(huì)被看作是一個(gè)無狀態(tài)的函數(shù)計(jì)算的串行。
 
正如軟件工程中不同的群體會(huì)提倡不同的“方法學(xué)”一樣,不同的編程語言也會(huì)提倡不同的“編程范型”。一些語言是專門為某個(gè)特定的范型設(shè)計(jì)的(如Smalltalk和Java支持面向?qū)ο缶幊蹋鳫askell和Scheme則支持函數(shù)式編程),同時(shí)還有另一些語言支持多種范型(如Ruby、Common Lisp、Python和Oz)。
 
編程范型和編程語言之間的關(guān)系可能十分復(fù)雜,由于一個(gè)編程語言可以支持多種范型。例如,C++設(shè)計(jì)時(shí),支持過程化編程、面向?qū)ο缶幊桃约胺盒途幊獭H欢O(shè)計(jì)師和程序員們要考慮如何使用這些范型元素來構(gòu)建一個(gè)程序。一個(gè)人可以用C++寫出一個(gè)完全過程化的程序,另一個(gè)人也可以用C++寫出一個(gè)純粹的面向?qū)ο蟪绦颍踔吝€有人可以寫出雜揉了兩種范型的程序。

不管看官是初學(xué)者還是老油條,都建議將上面這段話認(rèn)真讀完,不管理解還是不理解,總能有點(diǎn)感覺的。

這里推薦一篇文章,這篇文章來自網(wǎng)絡(luò):《主要的編程范型》

扯了不少編程范型,今天本講要講什么呢?今天要介紹幾個(gè)python中的小函數(shù),這幾個(gè)函數(shù)都是從函數(shù)式編程借鑒過來的,它們就是:

filter、map、reduce、lambda、yield

有了它們,最大的好處是程序更簡(jiǎn)潔;沒有它們,程序也可以用別的方式實(shí)現(xiàn),只不過麻煩一些罷了。所以,還是能用則用之吧。

lambda

lambda函數(shù),是一個(gè)只用一行就能解決問題的函數(shù),聽著是多么誘人呀。看下面的例子:
代碼如下:
>>> def add(x):     #定義一個(gè)函數(shù),將輸入的變量增加3,然后返回增加之后的值
...     x +=3
...     return x
...
>>> numbers = range(10)
>>> numbers
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]  #有這樣一個(gè)list,想讓每個(gè)數(shù)字增加3,然后輸出到一個(gè)新的list中

>>> new_numbers = []
>>> for i in numbers:
...     new_numbers.append(add(i))  #調(diào)用add()函數(shù),并append到list中
...

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 当雄县| 莱阳市| 镇江市| 宝丰县| 平度市| 嵩明县| 金溪县| 曲阳县| 香港| 定结县| 江城| 扬中市| 讷河市| 新乡县| 利川市| 巴东县| 汉阴县| 楚雄市| 丹凤县| 周口市| 北安市| 军事| 新化县| 密山市| 会同县| 思南县| 长春市| 苍山县| 亚东县| 石嘴山市| 布尔津县| 偃师市| 金塔县| 偏关县| 卓资县| 丰台区| 宜昌市| 辽宁省| 喀喇| 翼城县| 如东县|