高次機能は使用しませんか?あなたが最も便利なのpython 3高階関数を教えます

私は多くの読者は、まだ見て無知開くように指していることを信じて、そこでの高階関数、高いとは何でしょうか?

大きな猫は、私たちは限り関数は、以下の2点を満たすように定義された通り、高階関数を呼び出すことができ、高階関数であるかについてお話しましょうだろう。


1.入力の一つ以上の関数として受け付け

2.関数の出力


それは実際には、大人の単語の上の定義は、高階関数と呼ばれる関数としての機能や関数の関数の戻り値のパラメータとして翻訳され、多くの無知ではありません。
最も一般的な高階関数は、関数クロージャデコレータであるクロージャを達成するためのシンタックスシュガーで、Pythonのデコレータ高階関数の重要性を示しているだけで使用される技術ソリューションの多数の一つです。
デコレータは、我々は、関数の戻り値として高階関数の出力である主に高階関数の入力、メインマップ、削減し、フィルタ機能などの1つまたは複数のパラメータを受け入れるために、今日話します。
マップ機能

 

 


マップが提供する機能に応じて指定されたシーケンスのマッピングを行います。最初のパラメータは、後者は、反復パラメータオブジェクトであり、関数です。機能を機能するために、各要素のパラメータ配列、戻り値は、新しいリスト(python2)またはイテレート可能オブジェクト(のpython3)です。マップ(機能、反復可能な、...)
ケース:一覧(地図(lambdax:X ** 2)[1、2 ,. 3 ,. 4 ,. 5。])結果:[1 ,. 4 ,. 9、16、25]のリスト(マップ(lambdax、Y、X + Y、[1、3、5、7、9]、[2、4、6、8、10]))結果:[3、7、11、15、19]リスト(マップ(STR)[1,2 ,. 3 ,. 4 ,. 5。])結果:[ '1' 、 '2'、' 3' 、 '4' 、' 5' ]
機能を低下させます

 

 


蓄積されたパラメータシーケンスの機能要素を減らします。以下のすべてのデータ・オブジェクトの反復機能を低下させる:機能を有する第一および第二の素子の第1組の(二つのパラメータ)の関数で動作する再結果が第で得られた、減少させるために渡されますデータは、最終的な結果を得るために、機能動作に機能します。
Python2は内蔵の削減で機能のpython3はfunctoolsライブラリによってインポートする必要があります。functoolsから減らすインポート
構文:(機能、反復処理可能)削減
:ケース減らす(lambdax、Y:X + Y、[1,2,3,4,5])結果:15reduce(ラムダX、Y:X * Y、範囲(1,6))結果: 120

フィルタ機能

 

 


filter函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表(python2)或迭代器(python3)。该函数接收两个参数,第一个为函数,第二个为可迭代对象,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表(或迭代器)中。
语法:filter(function, iterable)
案例:List(filter(lambda x: x % 2 == 0, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]))Result: [2, 4, 6, 8, 10]list( filter((lambda x: x < 0), range(-5,5)))Result: [-5, -4, -3, -2, -1]a = [1,2,3,5,7,9]b = [2,3,5,6,7,8]list(filter(lambda x: x in a, b))Result: [2, 3, 5, 7]

作  者:Testfan 大猫
出  处:微信公众号:自动化软件测试平台
版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

 

おすすめ

転載: www.cnblogs.com/testfan2019/p/12400968.html