咱們知道圓的面積計算公式爲:函數
S = πr²
當咱們知道半徑r的值時,就能夠根據公式計算出面積。假設咱們須要計算3個不一樣大小的圓的面積:spa
r1 = 12.34 r2 = 9.08 r3 = 73.1 s1 = 3.14 * r1 * r1 s2 = 3.14 * r2 * r2 s3 = 3.14 * r3 * r3
當代碼出現有規律的重複的時候,你就須要小心了,每次寫3.14 * x * x不只很麻煩,並且,若是要把3.14改爲3.14159265359的時候,得所有替換。code
有了函數,咱們就再也不每次寫s = 3.14 * x * x,而是寫成更有意義的函數調用 s = area_of_circle(x)
,而函數 area_of_circle 自己只須要寫一次,就能夠屢次調用。ip
抽象是數學中很是常見的概念。舉個例子:ci
計算數列的和,好比:1 + 2 + 3 + ... + 100,寫起來十分不方便,因而數學家發明了求和符號∑,能夠把1 + 2 + 3 + ... + 100記做:數學
100 ∑n n=1
這種抽象記法很是強大,由於咱們看到∑就能夠理解成求和,而不是還原成低級的加法運算。io
並且,這種抽象記法是可擴展的,好比:class
100 ∑(n²+1) n=1
還原成加法運算就變成了:擴展
(1 x 1 + 1) + (2 x 2 + 1) + (3 x 3 + 1) + ... + (100 x 100 + 1)
可見,藉助抽象,咱們才能不關心底層的具體計算過程,而直接在更高的層次上思考問題。程序
寫計算機程序也是同樣,函數就是最基本的一種代碼抽象的方式。
Python不但能很是靈活地定義函數,並且自己內置了不少有用的函數,能夠直接調用。