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

Pythonでタプルを合計桁数で並べ替える


タプルのリスト内の要素を数字に基づいて並べ替える必要がある場合は、「sorted」メソッドとラムダ関数を使用できます。

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

my_list = [(11, 23, 45, 678), (34, 67), (653,), (78, 99, 23, 45), (67, 43)]

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

my_result = sorted(my_list, key = lambda tup : sum([len(str(ele)) for ele in tup ]))

print("The sorted tuples are ")
print(my_result)
>

出力

The list is :
[(11, 23, 45, 678), (34, 67), (653,), (78, 99, 23, 45), (67, 43)]
The sorted tuples are
[(653,), (34, 67), (67, 43), (78, 99, 23, 45), (11, 23, 45, 678)]

説明

  • タプルのリストが定義され、コンソールに表示されます。

  • ラムダ関数は、タプルのリストを反復処理し、すべての要素を文字列データ型に変換した後、すべての要素の長さを取得するために使用されます。

  • これは「sort」メソッドを使用してソートされます。

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

  • これはコンソールに表示されます。


  1. Pythonでタプルを更新する

    タプルは不変です。つまり、タプル要素の値を更新または変更することはできません。次の例が示すように、既存のタプルの一部を使用して新しいタプルを作成できます- 例 #!/usr/bin/python tup1 = (12, 34.56); tup2 = ('abc', 'xyz'); # Following action is not valid for tuples # tup1[0] = 100; # So let's create a new tuple as follows tup3 = tup1 + tup2; print tup3; 出力 上記

  2. タプルを任意のキーで昇順でソートするPythonプログラム。

    タプルが与えられた場合、私たちのタスクは、タプルのリストをタプル内の任意のキーで昇順で並べ替えることです。任意のキーに従ってそれらをソートする必要があります。これを行うには、sorted()関数を使用して、key =lastを使用してそれらをソートし、指定されたタプルをソートする必要があるキーインデックスとしてlastを格納します。 例 Input: A = [(2, 55), (1, 20), (4, 40), (2, 30)] k = 0 Output: [(1, 20), (2, 30), (2, 55), (4, 40)] 説明 0番目のインデックスキー