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

Python | 2番目のリストを使用して最初のリストの値を並べ替えます


2番目のリストを使用して最初のリストの値を並べ替える必要がある場合は、「sorted」メソッドと「zip」メソッドが使用されます。

リストを使用して、異種の値(つまり、整数、浮動小数点、文字列などの任意のデータ型のデータ)を格納できます。

「sorted」メソッドは、リストの要素を並べ替えるために使用されます。

zipメソッドは反復可能オブジェクトを取得し、それらをタプルに集約して、結果として返します。

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

def list_sort(my_list_1, my_list_2):
   zipped_list_pairs = zip(my_list_2, my_list_1)
   my_result = [x for _, x in sorted(zipped_list_pairs)]
   return my_result
my_list_1 = ['m', 'o', 'p', 'l', 'k', 'v', 'c', 'e', 'r']
my_list_2 = [ 1, 0,0, 2, 2, 1, 1, 0,0]
print("The first list is :")
print(my_list_1)
print("The second list is :")
print(my_list_2)
print("The first list is being sorted based on second list")
print(list_sort(my_list_1, my_list_2))
my_list_3 = ['h', 'k', 'l', 'p', 'q', 'p', 'k', 'l', 'h', 'm', 'u', 'z', 'f', 't']
my_list_4 = [ 0,1,1,1,0,2,2,2,0,2,1,2,1,0]
print("The third list is :")
print(my_list_3)
print("The fourth list is :")
print(my_list_4)
print("The third list is being sorted based on fourth list")
print(list_sort(my_list_3, my_list_4))

出力

The first list is :
['m', 'o', 'p', 'l', 'k', 'v', 'c', 'e', 'r']
The second list is :
[1, 0, 0, 2, 2, 1, 1, 0, 0]
The first list is being sorted based on second list
['e', 'o', 'p', 'r', 'c', 'm', 'v', 'k', 'l']
The third list is :
['h', 'k', 'l', 'p', 'q', 'p', 'k', 'l', 'h', 'm', 'u', 'z', 'f', 't']
The fourth list is :
[0, 1, 1, 1, 0, 2, 2, 2, 0, 2, 1, 2, 1, 0]
The third list is being sorted based on fourth list
['h', 'h', 'q', 't', 'f', 'k', 'l', 'p', 'u', 'k', 'l', 'm', 'p', 'z']

説明

  • 「list_sort」という名前のメソッドが定義されています。このメソッドは、2つのリストをパラメーターとして受け取ります。
  • 2つのリストを圧縮して、別の変数に格納します。
  • これは繰り返され、並べ替えられ、別の変数に割り当てられます。
  • 結果としてコンソールに表示されます
  • 2つのリストが定義され、コンソールに表示されます。
  • メソッドはこれらのリストで呼び出されます。
  • コンソールに出力として表示されます。

  1. Pythonで辞書の値で辞書のリストを並べ替えるにはどうすればよいですか?

    Pythonには、反復可能オブジェクトの要素を特定の順序で並べ替える組み込み関数sorted()があります。 sorted(iterable[, key][, reverse] 2番目のパラメーターは、戻り値がソートのキーとして使用される関数です。 3番目のパラメータはデフォルトでfalseです。trueの場合、ソートされたリストは降順で表示されます。 辞書キーの値をソートされた関数のキーとして定義するラムダ関数を使用します。次の例では、キーに関連付けられた値の昇順に従って辞書のリストを並べ替えます。 >>> dictlist=[{'name':'

  2. Pythonでリスト内のオブジェクトを並べ替える方法は?

    int、float、strings、chars、または__cmp__メソッドを実装したその他のクラスのリストを並べ替えるには、リストでsortを呼び出すだけで並べ替えることができます。リストを逆順(降順)でソートする場合は、reverseパラメーターも渡すだけです。 例 my_list = [1, 5, 2, 6, 0] my_list.sort() print(my_list) my_list.sort(reverse=True) print(my_list) 出力 これにより出力が得られます- [0, 1, 2, 5, 6] [6, 5, 2, 1, 0] タプルは不変であるため、タプル