본문 바로가기
IT/Python Quiz

[python] 리스트 컴프리헨션 코드 작성 연습3

by Echinacea 2025. 2. 20.
반응형

 

 

문제 1

리스트에서 모든 문자열을 대문자로 변환하는 리스트 컴프리헨션을 작성하세요.

🔹 입력 예시

words = ["hello", "world", "python"]

🔹 출력 예시

["HELLO", "WORLD", "PYTHON"]

 

 

문제 2

주어진 리스트에서 홀수는 제거하고 짝수만 남기는 리스트를 리스트 컴프리헨션을 사용하여 생성하세요.

🔹 입력 예시

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]

🔹 출력 예시

[2, 4, 6, 8]

 

 

문제 3

리스트에서 각 숫자의 세제곱을 구하는 리스트를 리스트 컴프리헨션으로 생성하세요.

🔹 입력 예시

numbers = [1, 2, 3, 4, 5]

🔹 출력 예시

[1, 8, 27, 64, 125]

 

 

문제 4

리스트에서 길이가 4 이하인 단어만 포함하는 리스트를 생성하세요.

🔹 입력 예시

words = ["cat", "elephant", "dog", "tiger"]

🔹 출력 예시

["cat", "dog"]

 

 

문제 5

리스트에서 각 문자열의 길이를 포함하는 튜플 리스트를 생성하세요.

🔹 입력 예시

words = ["apple", "banana", "cherry"]

🔹 출력 예시

[("apple", 5), ("banana", 6), ("cherry", 6)]

 

 

 

 

 

 

 

 

 

 

 

✅ 정답과 해설

문제 1 정답

uppercase_words = [word.upper() for word in words]

🔍 설명: upper() 메서드를 사용하여 각 문자열을 대문자로 변환합니다.


문제 2 정답

even_numbers = [x for x in numbers if x % 2 == 0]

🔍 설명: if x % 2 == 0 조건을 사용하여 짝수만 필터링합니다.


문제 3 정답

cubed_numbers = [x**3 for x in numbers]

🔍 설명: 각 숫자를 **3 연산자로 세제곱합니다.


문제 4 정답

short_words = [word for word in words if len(word) <= 4]

🔍 설명: if len(word) <= 4 조건을 사용하여 길이가 4 이하인 단어만 필터링합니다.


문제 5 정답

word_lengths = [(word, len(word)) for word in words]

🔍 설명: 각 단어와 길이를 튜플 형태로 저장합니다.

 

반응형

댓글