TECH
[python] sort, sorted ν¨μμμ λλ€ ννμμΌλ‘ 쑰건 μ§μ νκΈ°
ttaerrim
2021. 7. 22. 13:45
λλ€ ννμμ΄λ?
λλ€ ννμμ μ ννλ‘ λμ΄ μλ€κ³ ν΄μ λλ€ ννμ(lambda expression)μ΄λΌκ³ λΆλ₯Έλ€. νΉν λλ€ ννμμ ν¨μλ₯Ό κ°νΈνκ² μμ±ν μ μμ΄μ λ€λ₯Έ ν¨μμ μΈμλ‘ λ£μ λ μ£Όλ‘ μ¬μ©νλ€.
μ λ ¬ ν¨μμμ μ¬μ©νκΈ°
s = ['2 A', '1 A', '4 C', '1 B']
λΌλ λ°°μ΄ sκ° μμ λ, sorted()λ‘ μ λ ¬ν κ²°κ³Όλ λ€μκ³Ό κ°μ κ²μ΄λ€.
>> sorted(s)
['1 A', '1 B', '2 A', '4 C']
첫 λ²μ§Έ λ¬ΈμμΈ μ«μκ° μλ λ λ²μ§Έ λ¬Έμ ABCλ₯Ό μ°μ μΌλ‘ κΈ°μ€μΌλ‘ μ λ ¬νκ³ μΆμ λλ sorted ν¨μ λ΄λΆμ λλ€ ννμμ μ§μ νμ¬ μ λ ¬νλ©΄ λλ€.
>> sorted(s, key=lambda x: (x.split()[1], x.split()[0]))
['1 A', '2 A', '1 B', '4 C']