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

Pythonでリスト内の「K」の直前にある要素を抽出する方法


リストの中から、特定の値「K」の直前に位置する要素を抽出したい場合があります。そのようなときは、シンプルなforループによる反復処理と、リストの「append」メソッドを組み合わせることで簡単に実現できます。

サンプルコード

以下に具体的な実装例を示します。

my_list = [45, 65, 32, 78, 99, 10, 21, 2]

print("The list is : ")
print(my_list)

K = 99
print("The value of K is ")
print(K)

my_result = []

for elem in range(len(my_list) - 1):
   if my_list[elem + 1] == K:
      my_result.append(my_list[elem])

print("The result is : " )
print(my_result)

出力結果

The list is :
[45, 65, 32, 78, 99, 10, 21, 2]
The value of K is
99
The result is :
[78]

コードの解説

  • まず、整数値を含むリストを定義し、コンソールに表示します。

  • 次に、検索対象となる値「K」を定義し、こちらもコンソールに出力します。

  • 結果を格納するための空のリストを用意します。

  • forループを使ってリストを走査し、各要素の「次の要素」が「K」と一致するかどうかを判定します。

  • 条件を満たす場合、その要素を「append」メソッドで結果リストに追加していきます。

  • 最後に、結果として得られたリストをコンソールに表示して完了です。

この例では、「99」の直前にある「78」が正しく抽出され、結果として [78] が出力されています。なお、ループ範囲を len(my_list) - 1 としている点に注意してください。これは、リストの最後の要素には「次の要素」が存在しないため、インデックスエラーを防ぐために範囲を1つ減らしているのです。

  1. Pythonでタプルのリストから指定した桁数の要素を抽出する方法

    タプルのリストの中から、特定の桁数を持つ要素だけを抽出したいケースは意外と多くあります。そんなときは、リスト内包表記を使うことで、簡潔かつ効率的に処理を実装できます。 以下に具体的な実装例を示します。 サンプルコード my_list = [(67, 2), (34, 65), (212, 23), (17, 67), (18, )] print("The list is : ") print(my_list) N = 2 print("The value of N is ") print(N) my_result = [sub for sub in

  2. Pythonでインデックスを指定してリストから要素を削除する方法

    Pythonでリストからインデックスを指定して要素を削除するには、主に2つの方法があります。del文を使う方法と、pop()メソッドを使う方法です。 del文で要素を削除する del文は、削除したい要素のインデックスを指定して使用します。指定した位置の要素がリストから取り除かれます。 >>> L1=[11,22,33,44,55,66,77] >>> del L1[2] >>> L1 [11, 22, 44, 55, 66, 77] 上記の例では、インデックス2(3番目の要素「33」)が削除され、リストの要素数が1つ減っています。del文は