Pythonの文字列Listを長さ順に並べ替えます。


文字列Listを長さ順に並べ替える方法を見ます。myList = [' ',' ',' ',' ',' ']1、まず文字列の長さを取得します。
2、並べ替え、sortedまたはlist.sort()を選んで並べ替えます。
内蔵されたsortedは新しいリストに戻ります。list.sortはリストを操作します。sorted(iterable, cmp=None, key=None, reverse=False)
iterable:反復可能なタイプです。
cmp:比較のための関数で、何を比較するかはkeyによって決まります。
key:リスト要素の属性または関数をキーワードとして、標準値、反復セットの一つがあります。
reverse:並べ替え規則.reverse=True  降順またはreverse=False昇順には、デフォルト値があります。
戻り値:順序付けされた反復可能なタイプで、iterableと同じです。

myList = ['   ','      ','     ','        ','       '] 
myList1 = sorted(myList,key = lambda i:len(i),reverse=True) 
print(myList1) 
myList = ['   ','      ','     ','        ','       '] 
myList.sort(key = lambda i:len(i),reverse=True) 
print(myList)
結果は以下の通りです

['        ', '       ', '      ', '     ', '   '] 
PS:下記のリストの文字列を見て、ある規則に従って並べ替える方法(python)
データを処理するときは、文字列の数字の大きさで並べ替えたい場合があります。
例えば、記録ファイルのセットがあります。それぞれ「1.dat」、「2.dat」…
このフォルダのすべての記録ファイル名をリストに読むと、これらの文字列の配列は次の通りです。
これらの文字列をどのように数字で並べますか?
1、まず正規表現で文字列の数字を抽出します。
2、並べ替え、built-in関数sortedを選択して並べ替えます。sorted(iterable, cmp=None, key=None, reverse=False)iterable:反復可能なタイプです。
cmp:比較のための関数で、何を比較するかはkeyによって決まります。
key:リスト要素の属性または関数をキーワードとして、標準値、反復セットの一つがあります。
reverse:並べ替え規則.reverse=True  降順またはreverse=False昇順には、デフォルト値があります。
戻り値:順序付けされた反復可能なタイプで、iterableと同じです。
ですから、順番を数字で撮ったら、keyは中の数字に対応します。
ですから、この問題は一言で解決します。

s = ['1.dat','10.dat','5.dat']
new = sorted(s,key = lambda i:int(re.match(r'(\d+)',i).group()))
print new
 得られた結果は
 この操作に対しては、同様にlist.sort()を使用し、python 2.4の後、list.sortとsortedにkeyパラメータを追加して関数を指定します。
違うところは、内蔵されたsortedは新しいリストに戻ります。list.sortはリストを操作します。

s = ['1.dat','10.dat','5.dat']
s.sort(key = lambda i:int(re.match(r'(\d+)',i).group()))
print s 
締め括りをつける
以上述べたように、編集者から紹介されたPythonの文字列Listは長さ順に並べられています。皆さんに何か質問があれば、メッセージをください。編集者はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。
本文があなたのためになると思ったら、転載を歓迎します。出所を明記してください。ありがとうございます。