Pythonのシリアル15高階関数&地図で確認

まず、高階関数

 

1.定義:使用するパラメータの関数としての機能が呼び出された高階関数

(1)変数を設定することができる割り当て

 

= 100 

、B = A

 

 

(2)関数は、変数の名前であります

 

DEF フナ():

  印刷" フナ()" 

フナ()

FunB = フナ

FunB()

 

注意:.私は名前が可変で機能します。ii.FunAとFunBが、だけではない、同じ名前

関数名が可変であるので、III。、それは別の関数にパラメータとして渡されるべきです。

2.高次機能、例えば

 

フナは、デジタル100倍デジタル通過返す共通機能である

DEF フナ(N)を:

    返す N- * 100 #は、機能、300倍を乗じ渡されるパラメータ、高次機能の使用を書き込むためDEF funB(N-) :返す。フナ(N-)3 * 印刷(。funB(9 ))





    



 

私たちは、より良い通話誰比較する関数を書きます

 

DEF フナ(N):

    リターン N * 100 DEF FUNC(N、F): 関数を3倍に拡大されているとN 00 
    Retrun F(N) * 3。プリント(FUNC(9、フナ))。



    


 

 

次の呼び出しが優れていることは明らかです。

(1)我々はの目的を達成するために通過する可変パラメータを使用し、機能間の結合を減少させます

(2)次の関数スケーラビリティ、例えば:私はあなたが、元の機能領域を変更せずに、関数を作成することができ、それを500倍に拡大します。

高次機能の3システム

(1)意図がマッピングされ、すなわち、セットまたは要素のリスト、各要素は、特定の規則に従って動作を実行するために、新しいリストまたはコレクションを生成します。

(2)マップ機能は、システムによって提供されるマッピング関数を有する関数であり、戻り値は、イテレータオブジェクトであります

 

L1 = [I  I における範囲(10 )] 

プリント(L1)

L2 = [] 

のためにL1:

    l2.append(I * 10 

、印刷(L2) 

利用マップ来の实现

DEF mulTen(N):

    戻り Nを* 10 

、L3 = マップ(mulTen、L1)

プリント(型(L3))

プリント(L3)

プリント(リスト(L3))

L4 = [I  I におけるL3] 

プリント(L4)

 

python2がリストに返されたアクションリストを参照していますが、のpython3戻り値の型は、それが何を意味するのかについては、操作のリストにない、変更、およびI:最初の2行は、このマップタイプの3行目を説明していない、4行目は歴史的な理由を持っています不明瞭。我々は印刷されたリストの5行目。6行目、なぜ空のリストの遺産はありますか?

 

第二に、ソースコード:

d19_2_higher_order_fuction

住所:HTTPS://github.com/ruigege66/Python_learning/blob/master/d19_2_higher_order_fuction

2.CSDNます。https://blog.csdn.net/weixin_44630050(西6月6月ムードが知らない - ルイを)

3.パークブログます。https://www.cnblogs.com/ruigege0000/

4.マイクロチャネル公共数に焦点を歓迎:フーリエ変換は、ビッグデータの学習教材を取得するには、舞台裏の返信「贈り物」を変換します。

 

おすすめ

転載: www.cnblogs.com/ruigege0000/p/11075031.html