스히 2022. 8. 7. 20:20

< 문자열 정렬하기>

 

string = input()
arr = sorted(string)
#print(arr)
sorted_str = "".join(arr)
print(sorted_str)​

 
 
- 문자열에 sort는 적용 불가
- sorted 적용하면 정렬된 리스트값 도출
- join으로 다시 문자열로 만들어주는 것이 필요
 
 
 
 
 

<lambda 함수>

 
함수이지만 이름 없이 사용되는 익명함수
 
def f(x):
    return x * 2

print(f(3)) # 6
 

위의 코드를 lambda를 사용하여 표현하면

 

f = lambda x: x * 2
print(f(3)) # 6

 

 

lambda를 사용한 객체정렬은 다음과 같음

students.sort(key=lambda x: x.kor) #국어점수 기준 오름차순 정렬
students.sort(key=lambda x: -x.kor) #국어점수 기준 내림차순 정렬

 

 

여러 우선순위를 가진다면?

 

students.sort(key=lambda x: (x.kor, x.eng)) 
# 국어점수 기준. 국어점수가 같다면 영어점수 기준

 

 

 

<enumerate() 함수>

 

for문에서 인덱스와 원소를 동시에 접근하면서 루프를 돌림

 

 

 for elem in enumerate(['A', 'B', 'C']):
 print(entry)
 
 >> (0, 'A')
    (1, 'B')
    (2, 'C')

 

 

 

 

 

+) 2차시 과제 중 어려웠던 문제

  • 정렬 - 객체정렬 - 정렬된 숫자 위치 알아내기