タプルのリストをソートしようとしています。並べ替えで並べ替え
リストは、私は、リストをソートする必要があり、フォーム
list=[(num1,distance1,blah1),.....]
であるw.r.t.距離は同じですが、ネクタイの場合は、より小さいnum値を選択する必要があります。
どうすればよいですか?
タプルのリストをソートしようとしています。並べ替えで並べ替え
リストは、私は、リストをソートする必要があり、フォーム
list=[(num1,distance1,blah1),.....]
であるw.r.t.距離は同じですが、ネクタイの場合は、より小さいnum値を選択する必要があります。
どうすればよいですか?
operator.itemgetter
を使用してキー機能を作成します。
from operator import itemgetter
new_list = sorted(list, key=itemgetter(1,0))
より正確には、彼の場合には 'itemgetter(1、0)'です。 –
これはどのように機能しますか? Pythonは 'itemgetter(1)'によってソートします.2つのタプルに適用された同じ値が返された場合、 'itemgetter(0)'によってソートされますか?あるいは、洗練されたタプルマジックがあるでしょうか? –
'itemgetter(1,0)'は、指定されたリストの2番目と1番目の値を含むタプルを返します。キーが配列の場合、 'sort'は最初に最初の値を、次に2番目をソートします。 –
あなたがこれまで行ってきたことを私たちに見せてください。 – styvane
@ user3100115バイナリヒープを使ったDijkstraのアルゴリズムの巨大な実装です。私は正しい順序で結果を返すのに苦労しています。 – Janmajay