반응형
input() 대신에 sys.stdin.readline()을 사용하는 이유?
[파이썬 문법] - [파이썬 문법] 입출력 에서 언급한대로 입력해야할 데이터가 매우 많은 경우 입력을 받는 것만으로도 시간 초과를 받을 수 있다. 예를 들어 반복문으로 여러줄을 입력 받아야하는 문제의 경우 input()을 사용하면 시간 초과를 받을 수 있다.
※ 한 줄의 문자열 입력받기
import sys
data = sys.stdin.readline().rstrip()
print(data)
rstrip()는 문자열의 맨 오른쪽의 개행문자(공백)를 삭제해주는 함수이다.
※ 여러 줄의 문자열 리스트에 입력받기
import sys
n = int(sys.stdin.readline()) # 입력받을 문자열 수
data = [sys.stdin.readline().rstrip() for i in range(n)]
※ 임의의 수의 정수 반복문으로 입력받기
import sys
n = int(input()) # 입력 받을 횟수
for i in range(n):
a,b = map(int, sys.stdin.readline().split())
print(a+b) # 입력받아 합 출력
※ 임의의 수의 정수 한줄에 입력받아 리스트에 저장하기
import sys
data = list(map(int,sys.stdin.readline().split()))
※ 임의의 수의 정수 n줄 입력받아 2차원 리스트에 저장하기
import sys
data = []
n = int(input())
for i in range(n):
data.append(list(map(int,sys.stdin.readline().split())))
# 리스트 컴프리헨션 이용한 방법
import sys
n = int(input())
data = [list(map(int, sys.stdin.readline().split())) for i in range(n)]
반응형
'Python > 파이썬 문법' 카테고리의 다른 글
[파이썬 문법] 문자열 보충(슬라이싱, 문자열 함수) (0) | 2022.01.06 |
---|---|
[파이썬 문법] 함수 (0) | 2021.12.29 |
[파이썬 문법] 파이썬의 조건문 (0) | 2021.12.28 |
[파이썬 문법] 입출력 (0) | 2021.12.28 |
[파이썬 문법] 그 외 다양한 자료형(문자열, 튜플, 사전, 집합) (0) | 2021.12.26 |