函式式程式設計

2021-09-12 01:18:08 字數 1376 閱讀 9974

函式的作用: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 而且 演算的函式可以接受函式當...