Python中Lamda表達式作爲函數參數的情況

這兩天看到別人代碼裏的一種寫法,覺得還挺新奇:

map_tree(lambda node: vectorize(node, num_vars, num_ints, ops, eos_token=eos_token, one_hot=one_hot), program)#這裏map_tree的第一個參數是一個lambda表達式。

#map tree的定義如下:
def map_tree(func, tree):
    new_tree = Node(func(tree.value) if tree.value is not None else tree.value)
    new_tree.children.extend(map(partial(map_tree, func), tree.children))
    return new_tree
#所以將lambda表達式作爲第一個參數傳進了map_tree,並且在其中進行了調用(func(tree.value))。

簡單記錄一下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章