python sortedの使い方
python sorted
リストをソートする必要がありますPythonは2つの方法を提供しています
与えられたList Lを並べ替える、
方法1.リストのメンバー関数sortでソート
方法2.built-in関数sortedでソート(2.4から)
--------------------------------sorted---------------------------------------
>>> help(sorted)
Help on built-in function sorted in module __builtin__:
sorted(...)
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
---------------------------------sort----------------------------------------
>>> help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
-----------------------------------------------------------------------------
iterable:反復可能なタイプです.
cmp:比較に使用する関数で、keyによって決定されるものを比較し、デフォルト値、反復集合の1つがあります.
key:リスト要素の属性と関数をキーワードとして、デフォルト値、反復セットの1つがあります.
reverse:ソートルール.reverse=Trueまたはreverse=Falseで、デフォルト値があります.
戻り値:iterableと同様にソートされた反復可能なタイプです.
注;一般的に、cmpおよびkeyはlambda式を使用することができる.
sort()とsorted()の違いは、sortがその場でリストを並べ替え、sorted()が新しいリストを生成することである.
Sorting basic:
Sorting cmp: >>>L = [('b',2),('a',1),('c',3),('d',4)]
>>>print
sorted(L, cmp=lambda x,y:cmp(x[1],y[1]))
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
Sorting keys: >>>L = [('b',2),('a',1),('c',3),('d',4)]
>>>print
sorted(L, key=lambda x:x[1]))
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
Sorting reverse:
リストをソートする必要がありますPythonは2つの方法を提供しています
与えられたList Lを並べ替える、
方法1.リストのメンバー関数sortでソート
方法2.built-in関数sortedでソート(2.4から)
--------------------------------sorted---------------------------------------
>>> help(sorted)
Help on built-in function sorted in module __builtin__:
sorted(...)
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
---------------------------------sort----------------------------------------
>>> help(list.sort)
Help on method_descriptor:
sort(...)
L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;
cmp(x, y) -> -1, 0, 1
-----------------------------------------------------------------------------
iterable:反復可能なタイプです.
cmp:比較に使用する関数で、keyによって決定されるものを比較し、デフォルト値、反復集合の1つがあります.
key:リスト要素の属性と関数をキーワードとして、デフォルト値、反復セットの1つがあります.
reverse:ソートルール.reverse=Trueまたはreverse=Falseで、デフォルト値があります.
戻り値:iterableと同様にソートされた反復可能なタイプです.
注;一般的に、cmpおよびkeyはlambda式を使用することができる.
sort()とsorted()の違いは、sortがその場でリストを並べ替え、sorted()が新しいリストを生成することである.
Sorting basic:
>>> print sorted([5, 2, 3, 1, 4])
[1, 2, 3, 4, 5]
>>> L = [5, 2, 3, 1, 4]
>>> L.sort()
>>> print L
[1, 2, 3, 4, 5]
Sorting cmp: >>>L = [('b',2),('a',1),('c',3),('d',4)]
sorted(L, cmp=lambda x,y:cmp(x[1],y[1]))
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
Sorting keys: >>>L = [('b',2),('a',1),('c',3),('d',4)]
sorted(L, key=lambda x:x[1]))
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
Sorting reverse:
>>> print sorted([5, 2, 3, 1, 4], reverse=True)
[5, 4, 3, 2, 1]
>>> print sorted([5, 2, 3, 1, 4], reverse=False)
[1, 2, 3, 4, 5]
: key>cmp(key cmp )
Sorting Keys : , L ,
?
>>> L = [('d',2),('a',4),('b',3),('c',2)]
>>> print sorted(L, key=lambda x:(x[1],x[0]))
>>>[('c', 2), ('d', 2), ('b', 3), ('a', 4)]
python2.7