函式的作用:1.可擴充套件,一處修改過處修改
2.減少重複**,可復用
3.**一致性
當乙個函式/過程沒有使用return顯示的定義返回值,python直譯器會隱式的返回none,所以在python中即便是過程也可以算作函式。
總結:返回乙個值返回該值,返回多個值返回元組,無返回值返回none
**示例:
import time
def logger_test():
time_format = '%y-%m-%d %x'
time_current = time.strftime(time_format)
with open('a.txt', 'a+') as f:
f.write('time %s end action\n' % time_current)
def test1():
print("test1 starting action...")
logger_test()
def test2():
print("test2 starting action...")
logger_test()
def test3():
print("test3 starting action...")
logger_test()
test1()
test2()
test3()
引數:
1.形參與實參
形參:形式引數,不是實際存在的,是虛擬變數。在定義函式和函式體時使用形參,目的是在函式呼叫時接收實參(實參個數、型別應該與形參一一對應)
實參:實際引數,呼叫函式時傳給函式的引數,可以是常數,變數,表示式,函式,傳給引數
區別:形式引數是虛擬的,不占用記憶體空間,形式引數只有在被呼叫時才分配記憶體單元,實參是乙個變數,占用記憶體空間,資料傳送單向,實參傳給形參,不能形參傳給實參
2.位置引數
位置引數和關鍵字(標準呼叫:實參與形參位置一一對應;關鍵字呼叫:位置無需固定)
3.位置引數一定要在關鍵字引數之前,否則會報錯。
4.預設引數
定義時函式頭等號定義賦值,呼叫函式時非必須傳遞值
5.引數組
def func(*args, **kwargs)
# *args表示接收一連串的位置引數轉換為元組, **kwargs表示接收一連串關鍵字引數轉換為乙個字典作為資料輸入
6.區域性變數與全域性變數
在子程式中定義的變數稱為區域性變數,在程式的一開始定義的變數稱為全域性變數。
全域性變數作用域是整個程式,區域性變數作用域是定義該變數的子程式。
當全域性變數與區域性變數同名時:
在定義區域性變數的子程式內,區域性變數起作用;在其它地方全域性變數起作用。
函式式程式語言python 函式式程式設計
函式是python內建支援的一種封裝,我們通過把大段 拆成函式,通過一層一層的函式呼叫,就可以把複雜任務分解成簡單的任務,這種分解可以稱之為面向過程的程式設計。函式就是面向過程的程式設計的基本單元。而函式式程式設計 請注意多了乙個 式 字 functional programming,雖然也可以歸結...
函式式程式設計
最近在看一些關於js方面的東東,除了些ajax的基本應用,還了解了些函式式程式設計 fp 的東東。雖然以前也玩過幾天lisp的,不過因為當時完全對fp的東西沒有概念,壓根就不知道原來這是list那一族最大的特性之一 另外我知道的還有個是gc,orz.光注意那些詭異的 表 去了。總結一下,傳統上認為f...
函式式程式設計
維基百科 函式式程式設計 英語 functional programming 或者函式程式設計,又稱泛函程式設計,是一種程式設計范型,它將計算機運算視為數學上的函式計算,並且避免使用程式狀態以及易變物件。函式程式語言最重要的基礎是 演算 lambda calculus 而且 演算的函式可以接受函式當...