機能:()マップが 提供する指定された順序に従ってマッピング機能を行います。マップは、()は、2つの名前のパラメータ、リストまたは他のタプルの関数です。治療の結果、位置変更リスト要素ではありません
限り行がイテレート可能オブジェクトであるように、第2の伝達関数パラメータをマップ
文法
マップ()関数の構文:
マップ(機能、反復可能な、...)
パラメータ
- 機能 - 機能
- 反復可能 - 一つ以上のシーケンス
1.新しいリストを取得するための要件は、------> forループ要素の元の要素値の2乗値実施します
NUM_1 = [1,2,10,5,4,6 ] プリント(NUM_1) 法 = [] のためでNUM_1: ret.append(I ** 2 ) プリンタ(右)
2.ライトバージョンリスト要素の二乗機能実装された機能パッケージ
NUM_1 = [1,2,10,5,4,6 ] プリント(NUM_1) DEF map_test(ARRY): 右 = [] のためにNUM_1: ret.append(iは ** 2 ) 戻り 右 右 = map_test(NUM_1 ) プリント(右)
3.最終的なバージョンは、値1プラス機能要素とカプセル化を達成することにより、匿名関数を使用して実装しました
NUM_1 = [1,2,10,5,4,6 ] DEF map_test(FUNC、ARRY): RET = [] のために私にARRY: RES = FUNC(I) ret.append(RES) リターンRETの プリント(map_test(ラムダ X、X + 1、NUM_1))
ラムダX転送することができる:4.map関数関数の形で、X + 1、カスタム関数は、実際の名前を渡すことができます
例:シーケンス内のマップ機能の実装要素を使用して1
= NUM_1 [1,2,10,5,4,6 ] RESは =マップ(ラムダ X:X + 1 、NUM_1) プリント(' 組み込み関数マップ、処理結果' 、RES) プリント(リスト(RES))
自己定義された機能を持つ5.map機能の背後にあります
= NUM_1 [1,2,10,5,4,6 ] DEF (X)をreduce_one: リターン X.の1- 印刷(' 伝達関数が知られている'、一覧(地図(reduce_one、NUM_1)))
6.map()は、名前の二つのパラメータの関数であり、タプルまたは文字列のリストがあってもよいです。
= MSG ' lihaifeng ' #の文字列 を印刷(一覧(地図(ラムダ X:x.upper()、MSG)))