Pythonのリストと辞書を昇順・降順に並び替え|sortとsortedで[Alexandros]の曲の長さ順に表示

この記事を読むことで、

リストと辞書を昇順・降順に並べ替える

リストを並べ替えるsort

辞書を並び替えるsorted

について学習出来ます。


具体例として、[Alexandros]というバンドの曲の中でも特にお気に入りの曲を用います。

今回使用する曲のリストです。

4:08 ワタリドリ 
3:15 FamousDay
4:27 RunAway
4:46 SNOW SOUND

これをこの様なリストを作ってみました。

DROS=['4:27 RunAway','4:08 ワタリドリ','3:15 FamousDay','4:46 SNOWSOUND']

下記のコードで、このまま出力してみます。
ループを使って見やすくしております。

#曲の入ったリスト
DROS=['4:27 RunAway','4:08 ワタリドリ','3:15 FamousDay','4:46 SNOWSOUND']

print("そのまま出力")
for music in DROS:
  print(music)

このコードの出力結果です。


では、このリストを昇順にします。

DROS.sort()

ここまでのコードと実行結果です。

#曲の入ったリスト
DROS=['4:27 RunAway','4:08 ワタリドリ','3:15 FamousDay','4:46 SNOWSOUND']

print("そのまま出力")
for music in DROS:
  print(music)

#ここでリストを昇順にしている
DROS.sort()

print("【昇順】で出力")
for music in DROS:
  print(music)


次に、このリストを降順にしてみます。
降順の書式はこの様になります。

DROS.sort(reverse=True)

では、降順の出力は、この様に書きます。

reverseはデフォルトでは、Falseになっています。
これをTrueにすることによって、リストを降順にしています。

ここまでのコードと実行結果です。

#曲の入ったリスト
DROS=['4:27 RunAway','4:08 ワタリドリ','3:15 FamousDay','4:46 SNOWSOUND']


print("そのまま出力")
for music in DROS:
  print(music)


#ここでリストを昇順にしている
DROS.sort()

print("【昇順】で出力")
for music in DROS:
  print(music)


#ここでリストを降順にしている
DROS.sort(reverse=True)

print("【降順】で出力")
for music in DROS:
  print(music)

それでは、辞書での並び替えについて掲載致します。
この様な辞書を作りました。

dict_DROS={'4:27':'RunAway','4:08':' ワタリドリ','3:15':'FamousDay','4:46':'SNOWSOUND'}

まずは、そのまま出力するコードと実行結果です。

#曲の入った辞書
dict_DROS={'4:27':'RunAway','4:08':' ワタリドリ','3:15':'FamousDay','4:46':'SNOWSOUND'}

print("そのまま出力")
for (time,music) in dict_DROS.items():
  print(time,music)

では、同様に辞書を昇順にしてみます。

リストと異なる点はsortedを使うことと、newやitems()も使うことによって昇順にする点です。

new_dict_DROS=sorted(dict_DROS.items())

上記を簡単に書くと、並び替えたい辞書を新しい辞書に代入して、その新しい辞書を出力しています。

コードと実行結果です。

#曲の入った辞書
dict_DROS={'4:27':'RunAway','4:08':' ワタリドリ','3:15':'FamousDay','4:46':'SNOWSOUND'}

print("そのまま出力")
for (time,music) in dict_DROS.items():
  print(time,music)

#ここで辞書を昇順にしている
new_dict_DROS=sorted(dict_DROS.items())

print("【昇順】で出力")
for (time,music) in new_dict_DROS:
  print(time,music)

今度は辞書を降順にしてみます。この様にコードを追記します。
こちらもreverseをTrueにします。

new_dict_DROS=sorted(dict_DROS.items(),reverse=True)

コードと実行結果です。

#曲の入った辞書
dict_DROS={'4:27':'RunAway','4:08':' ワタリドリ','3:15':'FamousDay','4:46':'SNOWSOUND'}

print("そのまま出力")
for (time,music) in dict_DROS.items():
  print(time,music)

#ここで辞書を昇順にしている
new_dict_DROS=sorted(dict_DROS.items())

print("【昇順】で出力")
for (time,music) in new_dict_DROS:
  print(time,music)

#ここで辞書を降順にしている
new_dict_DROS=sorted(dict_DROS.items(),reverse=True)

print("【降順】で出力")
for (time,music) in new_dict_DROS:
  print(time,music)

今度歌ってみたい曲です。

お疲れ様でした。ブレイクタイムPhotoは、

千葉県にある房総半島、外房の御宿の海です。
透明度が高い海が魅力ですね。

ご精読ありがとうございました。

■ 独習Python ■
Kindle版
単行本(ソフトカバー)

Python自作サンプル集へ戻る

写真クリエイターとしての活動
自己紹介

nekosiestr
プログラミング学習中のロスジェネ(就職氷河期世代)の発達障害者です。 宜しくお願いします。 趣味で写真を撮っています。 プログラミングは、GAS/HTML/CSS/JavaScript/jQuery/PHP、 発達障害は、自閉症スペクトラムASD/ADHD、その他双極性障害やHSP(5人に1人の繊細さん)などの生きづらさを抱えておりますが、それでも楽しく生きて行きたいです!! 写真は、以前はコンパクトデジカメ、現在は、OLYMPUSミラーレス一眼を使っています。

投稿者: nekosiestr

プログラミング学習中のロスジェネ(就職氷河期世代)の発達障害者です。 宜しくお願いします。 趣味で写真を撮っています。 プログラミングは、GAS/HTML/CSS/JavaScript/jQuery/PHP、 発達障害は、自閉症スペクトラムASD/ADHD、その他双極性障害やHSP(5人に1人の繊細さん)などの生きづらさを抱えておりますが、それでも楽しく生きて行きたいです!! 写真は、以前はコンパクトデジカメ、現在は、OLYMPUSミラーレス一眼を使っています。

モバイルバージョンを終了