[Python] 입력 받기

off_sujin·2022년 6월 2일
0
post-thumbnail

🌵 기본 입력 받기

n = int(input())

1~2줄이 입력으로 들어온다면 위의 방법으로 해도 무리가 없다.

하지만 엄청 많은 입력이 반복문으로 들어온다면 어떻게 해야할까?

🌵 빠른 입력 받기

import sys
line = sys.stdin.readline().rstrip()

이런 식으로 sys 라이브러리에 정의되어 있는 sys.stdin.readline().rstrip() 함수를 이용하면 된다.
마지막의 rstrip() 은 문자열 마지막의 공백 문자 \n를 제거하기 위해 사용하는 것이다.

입력의 개수가 많은 경우에는 위의 방법을 사용해야 시간 초과를 막을 수 있다!

🌵 파일 끝까지 입력 받기

import sys

lines = sys.stdin.readlines()

위와 같아보이지만 여기에는 끝에 s가 붙는다!
이렇게 하면 파일의 끝까지 입력을 한 번에 받아온다.
EOF(파일의 끝)를 판단할 수 있는지 묻는 문제에서 요긴하게 쓰인다.

받아온 입력을 활용하는 코드는 다음과 같다.

import sys

lines = sys.stdin.readlines()

for line in lines:
    A, B = map(int, line.split())
    print(A+B)

위의 코드는 백준 10951의 풀이 코드이기도 하다.

🌵 활용하기

🌱 2개의 정수를 공백으로 구분하여 입력받기

# input()
a, b = map(int, input().split()

# readline()
import sys

a, b = map(int, sys.stdin.readline().split())

🌱 여러 개의 정수를 공백으로 구분하여 리스트에 입력받기

# input()
data = list(map(int, input().split())

# readline()
import sys

data = list(map(int, sys.stdin.readline().split()))
profile
학습 중..

0개의 댓글