Python3 函數(個人總結)

概要:函數是組織好的,可重複使用的,用來實現單一,或相關聯功能的代碼段。函數能提高應用的模塊性,和代碼的重複利用率。

一、定義函數

語法格式:

def 函數名(參數列表):
    函數體

示例:

>>> def pow(x):
		"返回傳入數字的平方"
	    return x * x
>>> pow(3)
9

二、參數類型
函數的參數有必需參數,不定長參數,關鍵字參數,默認參數等,用法見示例,詳情可查看w3cschool

 def myprint(name, *hobby, **kw):
	print("name:{}".format(name))
	print("hobby:", end=" ")
	for i in hobby:
	    print(i, end=" ")
	if 'age' in kw:
	    print("age:{}".format(kw.get('age')))

	    
>>> myprint('lisi', 'book','music', age=18)
name:lisi
hobby: book music age:18
>>> myprint('lisi', 'book','music',sex='man')
name:lisi
hobby: book music 

三、高階函數
定義:函數作爲參數的函數爲高階函數
Python內置的幾個高階函數示例:

  • map函數
    函數說明:map(func, iterator):
    map函數有兩個參數,第一個參數func爲函數,第二個參數是一個序列。map函數會對序列的每一個元素都調用一遍func函數。並返回處理後的迭代器,可以通過list函數轉換爲列表。

示例

>>> def pow(x):
        return x * x
>>> re = list(map(pow, [1, 2, 3]))
>>> print(re)
[1, 4, 9]
  • reduce函數
    函數說明:reduce(func, iterator):
    第一個參數func是函數,函數入參兩個,第二個參數是一個序列,reduce函數會迭代序列的每一個元素,將該元素與後面的元素按func函數處理,並返回最終結果。

示例:

>>> def add(x, y):
        return x + y
>>> re = reduce(add, [1, 2, 3, 4])
>>> print(re)
10
  • filter函數
    函數說明:filter(func, iterator):
    filter函數的參數依然爲一個函數和序列,該函數起到過濾作用,通過func函數作用於每一個元素,根據返回結果是True或False,決定保留或刪除該元素。
    並返回一個迭代器,與map函數類似。

示例:

>>> def even(x):
        try:
            if x % 2 == 0:
                return True
        except Exception:
            return False
        return False
>>> re = list(filter(even, [1, 2, 3, 4]))
>>> print(re)
[2, 4]
發佈了36 篇原創文章 · 獲贊 31 · 訪問量 46萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章