본문 바로가기
IT/Python Quiz

[Python] 초급 퀴즈21 - sort()와 sorted() - 3탄

by Echinacea 2025. 3. 14.
반응형

이번 퀴즈에서는 sort()와 sorted()를 활용하여 직접 코드를 작성하고 응용하는 문제를 풀어보세요!


 

 

🧩 1. 다음 리스트의 짝수는 오름차순, 홀수는 내림차순으로 정렬하는 코드를 작성하세요.

numbers = [8, 3, 7, 1, 4, 2, 9, 6]
# 여기에 코드를 작성하세요.

 

 

🧩 2. sorted()와 lambda를 활용하여 튜플 리스트를 두 번째 요소(점수) 기준으로 내림차순 정렬하는 코드를 작성하세요.

students = [("Alice", 90), ("Bob", 85), ("Charlie", 95)]
# 여기에 코드를 작성하세요.

 

 

🧩 3. 문자열 리스트를 알파벳 역순으로 정렬하는 코드를 작성하세요.

words = ["python", "java", "c", "ruby", "swift"]
# 여기에 코드를 작성하세요.

 

 

🧩 4. 리스트 안의 문자열을 각 단어의 마지막 글자를 기준으로 정렬하는 코드를 작성하세요.

words = ["banana", "apple", "cherry", "date"]
# 여기에 코드를 작성하세요.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

🏆 정답 및 해설

✅ 1번 문제 정답:

numbers = [8, 3, 7, 1, 4, 2, 9, 6]
numbers.sort(key=lambda x: (x % 2, -x if x % 2 else x))
print(numbers)  # [2, 4, 6, 8, 9, 7, 3, 1]

📌 해설: key=lambda x: (x % 2, -x if x % 2 else x)를 사용하여 짝수는 오름차순, 홀수는 내림차순으로 정렬합니다.


✅ 2번 문제 정답:

students = [("Alice", 90), ("Bob", 85), ("Charlie", 95)]
sorted_students = sorted(students, key=lambda x: x[1], reverse=True)
print(sorted_students)  # [('Charlie', 95), ('Alice', 90), ('Bob', 85)]

📌 해설: key=lambda x: x[1]를 사용하여 두 번째 요소(점수)를 기준으로 내림차순 정렬합니다.


✅ 3번 문제 정답:

words = ["python", "java", "c", "ruby", "swift"]
sorted_words = sorted(words, reverse=True)
print(sorted_words)  # ['swift', 'ruby', 'python', 'java', 'c']

📌 해설: reverse=True 옵션을 사용하여 문자열 리스트를 알파벳 역순으로 정렬합니다.


✅ 4번 문제 정답:

words = ["banana", "apple", "cherry", "date"]
words.sort(key=lambda x: x[-1])
print(words)  # ['banana', 'apple', 'date', 'cherry']

📌 해설: key=lambda x: x[-1]를 사용하여 각 단어의 마지막 글자를 기준으로 정렬합니다.


반응형

댓글