2016-06-16 16 views
1

だから私は、質問、どのように私はこのリストを並べ替えることができます:それはに言った演習でソートリストをアルファベット順

['arancia','mela','Pera','UVA']

:このようになり

['Pera','mela','arancia','UVA']

をcmp引き数にsorted()関数を使用してください。

+0

'cmp'が廃止され、使用されるべきではないのに役立ちます。 –

+0

なぜあなたは引数が必要ですか?あなたがソートされた関数にそれを与えるなら、それはちょうどうまくいかないでしょうか? –

+0

sorted(myList)を実行すると、それが実行されます。あなたはcmp引数 –

答えて

1

あなたは、文字列の小文字表現をベースあなたの要素をソートする必要があります。

sorted(['Pera','mela','arancia','UVA'], key=str.lower) 

この意志の出力を:

['arancia', 'mela', 'Pera', 'UVA'] 
+1

なぜ最初の文字だけですか? –

+0

実際には間違いでした。小文字の表現で十分です@ IgnacioVazquez-Abrams – kardaj

4

あなたは簡単にkey引数を使用して、それを行うことができます。

my_list = ['Pera','mela','arancia','UVA'] 
my_list.sort(key=str.lower) 

まず、あなたの小文字の文字を取得します。

これにより、オブジェクトがインプレースに変更され、my_listがソートされます。

新しいリストを作成する場合は、同じkey引数を持つsorted関数も使用できます。たとえば:

my_list = ['Pera','mela','arancia','UVA'] 
my_sorted_list = sorted(my_list,key=str.lower) 

出力は次のようになります。

>>> my_list 
['Pera','mela','arancia','UVA'] 
>>> my_sorted_list 
['arancia', 'mela', 'Pera', 'UVA'] 
+0

正解です。修正されます、ありがとう。 –

+0

良い答え。また、 'sorted'は必要に応じて同じキーを使用できます。 – erip

+0

この回答の出力をお願いしますか? –

0

使用sorted()キーで。

>>> mc = ['Pera','mela','arancia','UVA'] 
>>> sorted(mc, key=str.lower) 
['arancia', 'mela', 'Pera', 'UVA'] 
1

これはあなたを助ける:

>>> words = ['Pera','mela','arancia','UVA'] 
>>> sorted(words) 
['Pera', 'UVA', 'arancia', 'mela'] 
>>> sorted(words, key=str.swapcase) 
['arancia', 'mela', 'Pera', 'UVA'] 

希望これは

関連する問題