반응형

문제 1
주어진 리스트에서 음수를 제거하고, 양수만 포함하는 리스트를 리스트 컴프리헨션을 사용하여 생성하세요.
🔹 입력 예시
numbers = [-10, 15, -3, 7, -2, 8]
🔹 출력 예시
[15, 7, 8]
문제 2
문자열 리스트에서 각 단어의 길이를 리스트 컴프리헨션을 이용해 생성하세요.
🔹 입력 예시
words = ["apple", "banana", "cherry"]
🔹 출력 예시
[5, 6, 6]
문제 3
1부터 10까지의 숫자 중에서 짝수는 문자열로 변환하고, 홀수는 그대로 유지하는 리스트를 리스트 컴프리헨션으로 생성하세요.
🔹 입력 예시
numbers = list(range(1, 11))
🔹 출력 예시
[1, "2", 3, "4", 5, "6", 7, "8", 9, "10"]
문제 4
리스트 컴프리헨션을 사용하여 주어진 문자열 리스트에서 첫 글자만 추출한 리스트를 생성하세요.
🔹 입력 예시
words = ["hello", "world", "python", "list"]
🔹 출력 예시
['h', 'w', 'p', 'l']
문제 5
2차원 리스트를 받아 대각선 요소(왼쪽 위에서 오른쪽 아래)를 추출하는 리스트 컴프리헨션을 작성하세요.
🔹 입력 예시
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
🔹 출력 예시
[1, 5, 9]
✅ 정답과 해설
문제 1 정답
✅ 리스트 컴프리헨션 사용
positive_numbers = [x for x in numbers if x > 0]
✅ 리스트 컴프리헨션 사용하지 않음
positive_numbers = []
for x in numbers:
if x > 0:
positive_numbers.append(x)
🔍 설명: if x > 0 조건을 사용하여 양수만 필터링합니다.
문제 2 정답
word_lengths = [len(word) for word in words]
🔍 설명: 각 단어의 길이를 len() 함수를 사용하여 리스트에 저장합니다.
문제 3 정답
formatted_numbers = [str(x) if x % 2 == 0 else x for x in numbers]
🔍 설명: if-else 문을 사용하여 짝수는 문자열로 변환하고, 홀수는 그대로 유지합니다.
문제 4 정답
first_letters = [word[0] for word in words]
🔍 설명: 각 단어의 첫 번째 문자를 word[0]을 이용하여 추출합니다.
문제 5 정답
✅ 리스트 컴프리헨션 사용
diagonal_elements = [matrix[i][i] for i in range(len(matrix))]
✅ 리스트 컴프리헨션 사용하지 않음
diagonal_elements = []
for i in range(len(matrix)):
diagonal_elements.append(matrix[i][i])
🔍 설명: 2차원 리스트의 대각선 요소를 matrix[i][i]를 통해 추출합니다.
반응형
'IT > Python Quiz' 카테고리의 다른 글
| [Python] math.ceil() 활용 미니 코딩테스트 문제 (0) | 2025.02.20 |
|---|---|
| [python] 2차원 리스트 코딩 퀴즈 (0) | 2025.02.20 |
| [python] 리스트 컴프리헨션 코드 작성 연습4 (0) | 2025.02.20 |
| [python] 리스트 컴프리헨션 코드 작성 연습3 (0) | 2025.02.20 |
| [Python] 초급 퀴즈23 - 리스트 컴프리헨션 심화 (0) | 2025.02.20 |
| [Python] 초급 퀴즈22 - 날짜와 시간 (datetime, time 모듈) (0) | 2025.02.20 |
| [Python] 초급 퀴즈21 - 모듈과 패키지 (import, from, as) (0) | 2025.02.20 |
| [Python] 초급 퀴즈20 - 클래스와 객체 (self, init, 메서드) (0) | 2025.02.20 |
댓글