Python sortとソート
Pythonにはソートのための内蔵関数があります.内蔵関数
1. sort
リストをソートするしかなく、ディック・シャナリー、トゥーフォードなどは
key
reverse
降順でソートする場合は、 https://blockdmask.tistory.com/466
sort
とメソッドsorted
の違いと、それらがどのように利用されているかを見てみましょう.1. sort
sort
は、リストソート方法を使用して既存のリストをソートし、None
を返します.リストをソートするしかなく、ディック・シャナリー、トゥーフォードなどは
sort
を使用できません.list_a=[3,2,1,4,5]
list_a.sort()
print(list_a)
# 결과: [1, 2, 3, 4, 5]
2. sortedsorted
はsort
とは異なり、iterable 객체
で使用可能である.新しいオブジェクトを返すため、速度はsort
より遅い.list_a = [3, 2, 1, 4, 5]
list_b=sorted(list_a)
print(list_b)
# 결과: [1, 2, 3, 4, 5]
ディクシャナ型では,ボタン並べ替えの方法の1つとして,items
法とsorted
関数,dict
関数を用いた.from collections import defaultdict
dict_a = defaultdict(str)
dict_a[3]
dict_a[2]
dict_a[1]
print(dict(sorted(dict_a.items())))
# 결과: {1: '', 2: '', 3: ''}
ディクシャナで値順に並べ替えたいなら、どうすればいいですか?sorted
関数のkey
を利用する方法があります!key
sort
およびsorted
にはkey
パラメータが存在し、key
およびlambda
関数を用いて所望の基準に従ってソートすることができる.dict_a = {
"라면": 1000,
"과자": 1200,
"커피": 3800,
"사탕": 500
}
dict_b = dict(sorted(dict_a.items(), key=lambda x: x[1]))
print(dict_b)
# 결과: {'사탕': 500, '라면': 1000, '과자': 1200, '커피': 3800}
凡例をソートする場合は、凡例の1番目の値を基準に昇順ソートを行い、1番目の値が同じであれば、凡例の2番目の値を基準に降順ソートを行います.dict_a = [(1, 100), (3, 300), (2, 100), (4, 700), (3, 900)]
dict_b = sorted(dict_a, key=lambda x: (x[0], -x[1]))
print(dict_b)
# 결과: [(1, 100), (2, 100), (3, 900), (3, 300), (4, 700)]
このように、key
では-符号を付けて降順ソートすることができるが、sort
およびsorted
関数にはreverse
パラメータが存在する.reverse
降順でソートする場合は、
reverse
をTrue
に設定できます.list_a = [5, 4, 2, 1, 3, 8, 7, 6, 9, 10]
print(sorted(list_a, reverse=True))
# 결과: [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
ソースとコメントReference
この問題について(Python sortとソート), 我々は、より多くの情報をここで見つけました https://velog.io/@gotaek/파이썬-sort와-sortedテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol