파이썬

리스트에서 짝수만 출력하는 방법

ghiott 2025. 3. 21. 18:00
반응형

📌 메타 설명

Python에서 리스트를 활용하여 숫자를 저장하고, 그중 짝수만 필터링하는 방법을 배워보세요!
for 문과 리스트 컴프리헨션을 활용하여 간결하고 효율적인 코드를 작성하는 방법을 소개합니다.


1. Python에서 리스트와 짝수 필터링하기

프로그래밍에서는 리스트에 저장된 데이터 중 특정 조건을 만족하는 값만 출력하는 기능이 자주 필요합니다.
특히, 짝수만 출력하는 프로그램은 Python에서 리스트를 다룰 때 기본적으로 연습하기 좋은 주제입니다.

이 글에서는 사용자로부터 5개의 숫자를 입력받아 리스트에 저장하고, 그중 짝수만 출력하는 방법을 배웁니다.

🔹 프로그램 개요

사용자로부터 5개의 숫자를 입력받아 리스트에 저장
리스트에서 짝수만 필터링하여 새로운 리스트 생성
짝수 목록을 출력


2. Python 코드 예제 (짝수 필터링)

Python에서는 리스트 컴프리헨션과 조건문을 활용하여 특정 조건을 만족하는 요소만 필터링할 수 있습니다.
아래 코드는 5개의 숫자를 입력받고, 그중 짝수만 출력하는 프로그램입니다.

# 빈 리스트 생성
numbers = []

# 사용자로부터 5개의 숫자 입력 받기
for i in range(5):
    num = int(input(f"{i+1}번째 숫자를 입력하세요: "))  # 정수 입력
    numbers.append(num)  # 리스트에 추가

# 리스트에서 짝수만 필터링
even_numbers = [num for num in numbers if num % 2 == 0]

# 결과 출력
print("짝수 목록:", even_numbers)

3. 코드 설명

  1. 리스트 생성
    • numbers = [] → 빈 리스트를 생성하여 입력받은 숫자를 저장할 공간을 마련합니다.
  2. 반복문을 활용한 입력
    • for i in range(5): → 5번 반복하면서 숫자를 입력받습니다.
    • int(input(f"{i+1}번째 숫자를 입력하세요: ")) → 사용자가 입력한 값을 int로 변환하여 숫자로 저장합니다.
    • numbers.append(num) → 입력받은 숫자를 리스트에 추가합니다.
  3. 짝수만 필터링
    • even_numbers = [num for num in numbers if num % 2 == 0]
      • 리스트 컴프리헨션을 활용하여 num % 2 == 0 조건을 만족하는 숫자만 새로운 리스트에 저장합니다.
  4. 결과 출력
    • print("짝수 목록:", even_numbers) → 필터링된 짝수 리스트를 출력합니다.

4. 실행 예제

✅ 실행 과정

1번째 숫자를 입력하세요: 10  
2번째 숫자를 입력하세요: 7  
3번째 숫자를 입력하세요: 22  
4번째 숫자를 입력하세요: 15  
5번째 숫자를 입력하세요: 8  
짝수 목록: [10, 22, 8]

💡 입력한 숫자 중에서 짝수(10, 22, 8)만 필터링되어 출력되었습니다! 🚀


5. 리스트 컴프리헨션을 활용한 간결한 코드

반복문을 사용하지 않고, 한 줄의 코드로 리스트를 생성하는 방법도 있습니다.

# 리스트 컴프리헨션을 활용한 입력
numbers = [int(input(f"{i+1}번째 숫자를 입력하세요: ")) for i in range(5)]

# 짝수만 필터링
even_numbers = [num for num in numbers if num % 2 == 0]

# 결과 출력
print("짝수 목록:", even_numbers)

💡 리스트 컴프리헨션을 사용하면 코드가 더 간결해집니다!


6. 예외 처리 추가 (잘못된 입력 방지)

사용자가 숫자가 아닌 값을 입력하면 오류가 발생할 수 있습니다.
이를 방지하기 위해 예외 처리(try-except)를 추가하여 프로그램이 안전하게 실행되도록 개선할 수 있습니다.

# 빈 리스트 생성
numbers = []

# 사용자로부터 5개의 숫자 입력 받기 (예외 처리 포함)
for i in range(5):
    while True:
        try:
            num = int(input(f"{i+1}번째 숫자를 입력하세요: "))  # 정수 입력
            numbers.append(num)  # 리스트에 추가
            break  # 입력이 성공하면 반복문 종료
        except ValueError:
            print("입력 오류! 숫자를 입력하세요.")  # 예외 발생 시 다시 입력 요청

# 짝수만 필터링
even_numbers = [num for num in numbers if num % 2 == 0]

# 결과 출력
print("짝수 목록:", even_numbers)

✅ 실행 예제

1번째 숫자를 입력하세요: 10  
2번째 숫자를 입력하세요: hello  
입력 오류! 숫자를 입력하세요.  
2번째 숫자를 입력하세요: 7  
3번째 숫자를 입력하세요: 22  
4번째 숫자를 입력하세요: world  
입력 오류! 숫자를 입력하세요.  
4번째 숫자를 입력하세요: 15  
5번째 숫자를 입력하세요: 8  
짝수 목록: [10, 22, 8]

💡 숫자가 아닌 값을 입력하면 오류 메시지를 출력하고 다시 입력을 받도록 구현했습니다! 😊


7. 결론

이번 글에서는 리스트를 활용하여 입력받은 숫자 중 짝수만 출력하는 방법을 배웠습니다.

리스트 생성 (numbers = [])
반복문을 활용한 입력 (for 문 사용)
리스트에서 짝수 필터링 (num % 2 == 0)
리스트 컴프리헨션을 활용하여 간결한 코드 작성
예외 처리를 추가하여 안전한 입력 처리

이제 Python을 활용하여 짝수를 필터링하는 다양한 연습을 해보세요! 🚀

반응형