Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのイテレータ関数


この記事では、Python3.xで使用できる4つのイテレーター関数について学習します。または、以前は、accumulate()、chain()、filter false()、dropwhile()メソッドです。

それでは、それぞれについて詳しく見ていきましょう-

Accumulate()&chain()メソッド

Accumulate()メソッドは2つの引数を取ります。1つは操作を繰り返すことができ、もう1つは実行する関数/操作です。デフォルトでは、2番目の引数が加算演算を実行します。

Chain()メソッドは、すべての反復可能オブジェクトを連結した後、すべての反復可能ターゲットを出力します。

以下の例は、実装を説明しています-

import itertools
import operator as op
# initializing list 1
li1 = ['t','u','t','o','r']
# initializing list 2
li2 = [1,1,1,1,1]
# initializing list 3
li3 = ['i','a','l','s','p','o','i','n','t']
# using accumulate() add method
print ("The sum after each iteration is : ",end="")
print (list(itertools.accumulate(li1,op.add)))
# using accumulate() multiply method
print ("The product after each iteration is : ",end="")
print (list(itertools.accumulate(li2,op.mul)))
# using chain() method
print ("All values in mentioned chain are : ",end="")
print (list(itertools.chain(li1,li3)))

出力

The sum after each iteration is : ['t', 'tu', 'tut', 'tuto', 'tutor']
The product after each iteration is : [1, 1, 1, 1, 1]
All values in mentioned chain are : ['t', 'u', 't', 'o', 'r', 'i',
'a', 'l', 's', 'p', 'o', 'i', 'n', 't']

Dropwhile()&filterfalse()メソッド

ドロップwhile()メソッドは、条件をチェックする関数と、操作を繰り返すことができる入力を受け入れます。条件がfalseになった後、iterableのすべての値を返します。

Filterfalse()メソッドは、条件をチェックする関数と、操作を繰り返すことができる入力を受け入れます。指定された条件がfalseになると値を返します。

import itertools
# list
l = ['t','u','t','o','r']
# using dropwhile() method
print ("The values after condition fails : ",end="")
print (list(itertools.dropwhile(lambda x : x!='o',l)))
# using filterfalse() method
print ("The values when condition fails : ",end="")
print (list(itertools.filterfalse(lambda x : x!='o',l)))

出力

The values after condition fails : ['o', 'r']
The values when condition fails : ['o']

結論

この記事では、Python3.xで使用できるさまざまなタイプのイテレーター関数について学習しました。またはそれ以前。


  1. Pythonでパターンを印刷する方法は?

    Pythonのパターンは、ネストされたforループを使用して印刷できます。外側のループは行数を反復処理するために使用され、内側のループは列数を処理するために使用されます。印刷ステートメントは、要件に応じてさまざまなパターンを形成するように変更されます。 パターンには、星型、数字型、アルファベット型があります。パターンは、さまざまな形、三角形、ピラミッドなどにすることができます。 例 これらのパターンはすべて、これらの異なるパターンを形成する変更されたprintステートメントを含むforループを使用して印刷できます。 これらのパターンの印刷の基本的な考え方は同じですが、わずかな違いが

  2. PythonでPOSTメソッドを使用して情報を渡す

    CGIプログラムに情報を渡す一般的により信頼性の高い方法はPOST方法です。これは、GETメソッドとまったく同じ方法で情報をパッケージ化しますが、?の後にテキスト文字列として送信する代わりにURLでは、別のメッセージとして送信します。このメッセージは、標準入力の形式でCGIスクリプトに送られます。 例 以下は、GETメソッドとPOSTメソッドを処理する同じhello_get.pyスクリプトです。 #!/usr/bin/python Import modules for CGI handling import cgi, cgitb # Create instance of FieldStora