2022年05月02日
python:ジェネレータ関数(配列から要素抽出)
配列から要素の抽出・フィルタリング
inputWords:入力文字列。フィルタリング対象
targetWords:フィルタリング用文字
【コード】
import itertools
inputWords = "おはようございます."
def targetWords(char):
return char in "あいうえお"
print("falseとなった要素のみ出力")
print(list(itertools.filterfalse(targetWords,inputWords)))
print("始めてfalseとなった要素以降を出力")
print(list(itertools.dropwhile(targetWords,inputWords)))
print("始めてfalseとなった要素まで出力")
print(list(itertools.takewhile(targetWords,inputWords)))
print("要素をスライスする. 開始と終了")
print(list(itertools.islice(inputWords,2,6)))
print("要素をスライスする. 開始と終了,スキップ")
print(list(itertools.islice(inputWords,2,6,3)))
print("selector_it の True項目のみ出力")
print(list(itertools.compress(inputWords,[0,0,0,1,1])))
inputWords = "おはようございます."
def targetWords(char):
return char in "あいうえお"
print("falseとなった要素のみ出力")
print(list(itertools.filterfalse(targetWords,inputWords)))
print("始めてfalseとなった要素以降を出力")
print(list(itertools.dropwhile(targetWords,inputWords)))
print("始めてfalseとなった要素まで出力")
print(list(itertools.takewhile(targetWords,inputWords)))
print("要素をスライスする. 開始と終了")
print(list(itertools.islice(inputWords,2,6)))
print("要素をスライスする. 開始と終了,スキップ")
print(list(itertools.islice(inputWords,2,6,3)))
print("selector_it の True項目のみ出力")
print(list(itertools.compress(inputWords,[0,0,0,1,1])))
【出力結果】
falseとなった要素のみ出力
['は', 'よ', 'ご', 'ざ', 'ま', 'す', '.']
始めてfalseとなった要素以降を出力
['は', 'よ', 'う', 'ご', 'ざ', 'い', 'ま', 'す', '.']
始めてfalseとなった要素まで出力
['お']
要素をスライスする. 開始と終了
['よ', 'う', 'ご', 'ざ']
要素をスライスする. 開始と終了,スキップ
['よ', 'ざ']
selector_it の True項目のみ出力
['う', 'ご']
['は', 'よ', 'ご', 'ざ', 'ま', 'す', '.']
始めてfalseとなった要素以降を出力
['は', 'よ', 'う', 'ご', 'ざ', 'い', 'ま', 'す', '.']
始めてfalseとなった要素まで出力
['お']
要素をスライスする. 開始と終了
['よ', 'う', 'ご', 'ざ']
要素をスライスする. 開始と終了,スキップ
['よ', 'ざ']
selector_it の True項目のみ出力
['う', 'ご']
【このカテゴリーの最新記事】
-
no image
-
no image
-
no image
-
no image
この記事へのトラックバックURL
https://fanblogs.jp/tb/11387669
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック