COS PRO 파이썬 3급에서 자주 나오는 입력 유형
COS PRO 파이썬 3급 입력 유형이 중요한 이유
COS PRO 파이썬 3급 시험에서는 다양한 상황에 맞는 입력 코드를 작성해야 하는 문제가 자주 출제됩니다. 초보자는 input() 함수 하나만으로 모든 입력을 처리할 수 있다고 생각하기 쉬우나, 실제로는 입력받은 값을 어떻게 활용하느냐에 따라 여러 방식이 필요합니다.
이 글에서는 시험에 자주 등장하는 입력 패턴들을 정리하고, 각각의 상황에서 실수 없이 코드를 작성하는 방법을 예제를 통해 함께 익혀봅니다. 파이썬의 기본 input(), 문자열 분할, 여러 값 입력 등의 활용법을 단계별로 설명합니다. 독자는 반드시 모든 코드를 직접 실행해보며 연습해보시길 권장합니다.
기본 입력 방법과 단일 값 입력하기
파이썬에서 가장 기본적인 입력 방법은 input() 함수로, 사용자가 값을 입력하면 문자열로 반환됩니다. 예를 들어 나이나 이름처럼 하나의 값만 받는 경우 아래와 같이 작성할 수 있습니다.
age = input()
print(age)
위 코드는 사용자가 입력한 값을 문자열로 받아 age 변수에 저장한 뒤 출력합니다. 만약 숫자로 계산해야 한다면, int()로 변환해야 합니다.
age = int(input())
print(age + 1)
여기서 중요 포인트는 input()이 항상 문자열을 반환한다는 점입니다. 숫자 연산이 필요하다면 반드시 int()나 float()로 변환하는 과정을 추가해야 합니다.
여러 값 입력: split()과 map() 활용법
한 줄에 여러 값을 한꺼번에 입력받아야 하는 경우가 시험에서 자주 나옵니다. 예를 들어 정수 두 개를 한 줄에 띄어쓰기로 구분해서 입력하는 문제는 다음과 같이 처리할 수 있습니다.
a, b = map(int, input().split())
print(a + b)
이 코드는 input()을 사용해 입력받은 문자열을 split()으로 공백 기준 나누고, 각 부분을 int로 변환해 a와 b에 저장합니다. map() 함수는 각 요소에 int 변환을 적용해줍니다.
리스트로 여러 값을 저장하는 경우도 많이 출제됩니다. 예를 들어, 숫자 다섯 개를 한 줄에 입력받아 리스트로 만드는 코드는 다음과 같습니다.
numbers = list(map(int, input().split()))
print(numbers)
이 코드는 입력한 값이 3 5 7 1 9라면 [3, 5, 7, 1, 9] 형태의 리스트로 저장합니다. 초보자는 map()과 split()의 순서를 혼동하기 쉽기 때문에 여러 번 연습하는 것이 좋습니다.
입력 실수 유형과 안전한 입력 코드 작성법
시험에서 자주 하는 실수는 다음과 같습니다.
- 정수 변환 누락:
int()로 변환하지 않고 곧바로 연산하려다 에러가 발생 - split() 사용 누락: 여러 값을 입력받아야 할 때
split()을 빼먹음 - map() 적용 순서 오류:
map()과list()의 위치를 바꾸거나 잘못 씀 - 입력 개수 불일치: 변수 개수와 실제 입력 값 개수가 다를 때
예를 들어 두 정수를 받아 합을 구하는 문제에서 아래처럼 작성하면 에러가 납니다.
잘못된 예
a, b = input().split()
print(a + b)
이 코드는 a와 b가 모두 문자열이어서 "3" + "5" = "35"가 되어버립니다. 정수 덧셈을 위한 코드로 수정하면 아래와 같습니다.
a, b = map(int, input().split())
print(a + b)
입력 값이 정확히 몇 개인지 확실하지 않을 때는 아래와 같이 리스트로 받아 처리하는 방법도 안전합니다.
values = list(map(int, input().split()))
for v in values:
print(v)
이 방법은 입력 데이터 개수가 정해져 있지 않아도 모두 리스트에 담아 처리할 수 있습니다. 단, 문제에서 요구하는 입력 개수가 정해져 있으면 변수 개수와 맞추는 것이 더 좋습니다.
실전 입력 패턴 예제와 연습
다음은 COS PRO 3급 실전에서 자주 만나는 입력 패턴을 정리한 예시입니다.
1. 두 문자열 입력받기
word1, word2 = input().split()
print(word1, word2)
2. 실수 입력받아 제곱 출력
n = float(input())
print(n * n)
3. 한 줄에 n개의 숫자 입력받아 모두 더하기
numbers = list(map(int, input().split()))
print(sum(numbers))
4. 여러 줄 입력이 필요한 경우
n = int(input())
for _ in range(n):
s = input()
print(s.upper())
이 예제는 첫 줄에 몇 번 반복할지 입력받고, 그 뒤줄부터 한 줄씩 받아 대문자로 출력합니다. 여러 줄 입력이 필요한 경우, for문과 함께 input()을 반복해 사용하면 됩니다.
핵심 정리와 연습 문제
지금까지 COS PRO 파이썬 3급에서 많이 나오는 입력 유형을 정리했습니다. 입력값의 개수, 자료형(문자열/정수/실수), 여러 줄 입력 등 상황에 따라 input(), split(), map() 조합을 정확히 익혀두세요. 실수는 대부분 자료형 변환이나 입력 값 개수에 대한 이해 부족에서 발생합니다.
연습 문제
- 정수 두 개를 한 줄에 입력받아 곱한 값을 출력하는 코드를 작성하세요.
- 한 줄에 이름과 나이를 입력받아 "이름: (이름), 나이: (나이)" 형태로 출력하세요. 단, 나이는 정수로 변환해 사용하세요. (힌트:
input().split()) - 첫째 줄에 정수 n을 입력받고, 다음 줄에 n개의 정수를 한 줄에 입력받아 모두 제곱하여 한 줄에 출력하는 코드를 작성해보세요.
각 문제를 직접 풀어보면서 다양한 입력 유형을 자연스럽게 익혀보시기 바랍니다.