데이터 코딩랩
input() vs sys.stdin.readline() 본문
✅ input() vs sys.stdin.readline()
✅ 작동 원리 설명
import sys
input = sys.stdin.readline
- sys.stdin → 파이썬이 사용하는 표준 입력 스트림 (기본은 키보드 입력)
- .readline() → 입력 스트림에서 한 줄을 직접 읽는다
→ 그래서 input()보다 빠름 (내부적으로 더 단순함) - input = sys.stdin.readline
→ 원래 input() 함수를 더 빠른 함수로 덮어쓴다는 의미!
✅ 사용 예시
import sys
input = sys.stdin.readline
N = int(input()) # \n 포함됨 → int 변환은 문제 없음
arr = [input().strip() for _ in range(N)] # \n 제거 필요!
✅ 꼭 알아야 할 주의점
s = input() # 일반 input은 개행 제거됨 (줄바꿈 없음)
s = input().strip() # 보통 필요 없음
s = sys.stdin.readline()
print(s) # 마지막에 '\n' 포함됨!
그래서 sys.stdin.readline() 쓸 때는
보통 .strip()을 붙이는 게 좋음
✅ sys.stdin.readline은 함수다!
import sys
read = sys.stdin.readline
여기서 sys.stdin.readline은 입력 스트림에서 한 줄을 읽어오는 함수
즉, input()과 똑같은 역할을 하지만 더 빠른 함수
✔️ 그래서 read = sys.stdin.readline 하면
read는 그 함수 자체를 가리키는 이름이 되는 (함수 객체)
'Language > Python' 카테고리의 다른 글
print() (0) | 2025.04.16 |
---|---|
리스트 컴프리핸션 (0) | 2025.04.16 |
팩토리얼 계산하기 (0) | 2024.08.13 |
파이썬 append() 함수, 예제 (0) | 2024.05.07 |
[03-1] if 문 (1) | 2024.03.22 |