lamdba為乙個表示式,函式體比def簡單。它的主體是乙個表示式,而不是乙個**塊,僅僅能在lamdba表示式中封裝有限的邏輯進去。
舉例如下:
>>> f = lambda x:x*x
>>>
print f(3)
9
>>> f1 = lambda x,y,z:x+y+z
>>>
print f1(2,3,10)
15
>>> n=5
>>> reduce(lambda x,y:x*y,range(1,n+1))
120
#定義乙個action函式,返回乙個lambda表示式同時呼叫了action函式作用域的變數x
>>>
defaction
(x):
...
return
lambda y:x+y
...
#a為返回的lambda表示式,a(3)即返回了x+y
>>> a=action(2)
>>> a(3)
5
還可以將上述函式直接寫成lambda表示式
>> action=lambda x:lambda y:x+y hljs python">>>> a=action(2)
>>> a(3)
5
PYTHON中的鍊錶
鍊錶 linked list 是由一組被稱為結點的資料元素組成的資料結構,每個結點都包含結點本身的資訊和指向下乙個結點的位址。由於每個結點都包含了可以鏈結起來的位址資訊,所以用乙個變數就能夠訪問整個結點序列。也就是說,結點包含兩部分資訊 一部分用於儲存資料元素的值,稱為資訊域 另一部分用於儲存下乙個...
(二十三)Lamdba表示式的使用
學前問?什麼是lambda表示式?有什麼作用?如何使用lambda表示式?使用它有哪些限制?0 函式式程式設計思想 注重結果,不注重過程,對於誰去做的,如何做的都不關心,只要結果得到即可。1 匿名內部類的優缺點 優點 不需要建立物件,直接寫 缺點 比較複雜,冗餘。1.1 lambda表示式與匿名內部...
python順序表儲存 Python中的順序表
python中的list和tuple兩種型別採用了順序表的實現技術,具有前面討論的順序表的所有性質。tuple是不可變型別,即不變的順序表,因此不支援改變其內部狀態的任何操作,而其他方面,則與list的性質類似。list的基本實現技術 python標準型別list就是一種元素個數可變的線性表,可以加...