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

Pythonでプログラムを作成して、「a」で始まる文字列と終了する文字列を含む一連の要素をフィルタリングします


入力 −シリーズがあると仮定します

0    apple
1    oranges
2    alpha
3    aroma
4    beta

出力 −そして、要素の結果は「a」で始まり、「a」で終わります。

2    alpha
3    aroma

ソリューション1

  • シリーズを定義します。

  • 正規表現を作成して、「a」で開始および終了を確認します

r'^[a]$|^([a]).*\1$'
  • 空のリストを作成し、forループを設定し、パターンをチェックするために内部のif条件を設定します。以下に定義されています

for i in data:
   if(re.search(exp, i)):
      ls.append(i)
  • 最後に、isin()を使用してシリーズを確認します。

理解を深めるために、次の実装を見てみましょう。

import pandas as pd
import re
l = ["apple","oranges","alpha","aroma","beta"]
data = pd.Series(l)
exp = r'^[a]$|^([a]).*\1$'
ls = []
for i in data:
   if(re.search(exp, i)):
      ls.append(i)
print(data[data.isin(ls)])

出力

2    alpha
3    aroma

ソリューション2

import pandas as pd
import re
l = ["apple","oranges","alpha","aroma","beta"]
data = pd.Series(l)
result = list(filter(lambda x:x.startswith('a') and x.endswith('a'),l))
print(data[data.isin(result)])

出力

2    alpha
3    aroma

  1. 特定の系列の整数要素のみをフィルタリングするプログラムをPythonで作成します

    入力 −次のシリーズがあると仮定します− 0    1 1    2 2    python 3    pandas 4    3 5    4 6    5 出力 −整数要素のみの結果は− 0    1 1    2 4    3 5    4 6    5 ソリューション1 シリーズを定義します。 正規表現内にラムダフィルターメソッドを

  2. 特定のシリーズの有効な日付をフィルタリングするプログラムをPythonで作成します

    入力 −シリーズがあると仮定します 0 2010-03-12 1 2011-3-1 2 2020-10-10 3 11-2-2 出力 −そして、シリーズの有効な日付の結果は、 0 2010-03-12 2 2020-10-10 ソリューション1 シリーズを定義します。 ラムダフィルターメソッドを適用して、一連のパターンを検証します。 data = pd.Series(l) result = pd.Series(filter(lambda x:re.match(r"\d{4}\W\d{2}\W\d{2}",x),data)) 最後に、isin()関数を