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

Python –リスト内の2つの要素間の最も近い出現


リスト内の2つの要素間の最も近いオカレンスを表示する必要がある場合、3つのパラメーターを受け取るメソッドが定義されます。 「notin」演算子とリスト内包表記を使用して結果を決定します。

以下は同じのデモンストレーションです-

def nearest_occurence_list(my_list, x, y):
   if x not in my_list or y not in my_list:
      return -1
   x_index = [index for index in range(len(my_list)) if my_list[index] == x]
   y_index = my_list.index(y)
   min_dist = 1000000
   result = None
   for element in x_index:
      if abs(element - y_index) < min_dist:
         result = element
         min_dist = abs(element - y_index)
   return result
my_list = [12, 24, 15, 17, 28, 26, 13, 28, 14, 12, 20, 19, 24, 29, 14]
print("The list is :")
print(my_list)
x = 14
print("The value of x is ")
print(x)
y = 26
print("The value of y is ")
print(y)
print("The result is :")
print(nearest_occurence_list(my_list, x, y))

出力

The list is :
[12, 24, 15, 17, 28, 26, 13, 28, 14, 12, 20, 19, 24, 29, 14]
The value of x is
14
The value of y is
26
The result is :
8

説明

  • 「nearest_occurence_list」という名前のメソッドが定義されており、3つのパラメーターを取ります。

  • 2番目または3番目のパラメーターが最初のパラメーターに存在しない場合は、-1が返されます。

  • リスト内包表記は、要素を反復処理し、リストに最初のパラメーターが含まれている場合はリストの長さを取得するために使用されます。

  • これは変数1に割り当てられます。

  • 2番目のパラメータのインデックスが決定されます。

  • 変数1内の要素が繰り返され、要素とyのインデックスの差が特定の値と比較されます。

  • これに応じて、結果が返されます。

  • メソッドの外部では、リストが定義され、コンソールに表示されます。

  • xとyの値が定義され、コンソールに表示されます。

  • このメソッドは、必要なパラメーターを渡すことによって呼び出されます。

  • これは、コンソールに表示される出力です。


  1. Pythonでリストのサイズを見つける

    リストはPythonのコレクションデータ型です。リスト内の要素は変更可能であり、要素に関連付けられた特定の順序はありません。この記事では、Pythonでリストの長さを見つける方法を説明します。つまり、重複しているかどうかに関係なく、リストに存在する要素の数を取得する必要があります。 例 以下の例では、「日」という名前のリストを使用します。まず、len()関数を使用してリストの長さを見つけます。次に、さらにいくつかの要素を追加し、append()関数を使用して長さを再度確認します。最後に、remove()関数を使用していくつかの要素を削除し、長さを再度確認します。要素が重複している場合でも、r

  2. 2つのリストの違いをリストするPythonプログラム。

    この問題では、2つのリストが与えられます。私たちのタスクは、2つのリストの違いを表示することです。 Pythonはset()メソッドを提供します。ここではこの方法を使用します。セットは、重複する要素がない順序付けられていないコレクションです。セットオブジェクトは、和集合、共通部分、差、対称差などの数学演算もサポートしています。 例 Input::A = [10, 15, 20, 25, 30, 35, 40] B = [25, 40, 35] Output: [10, 20, 30, 15] 説明 difference list = A - B アルゴリズム Step 1: Inp