프로그래밍/python

[파이썬/python]sys.stdin.readline과 input()의 차이점

기록합시다 2025. 2. 27. 19:09

1. 속도 차이

  • sys.stdin.readline이 더 빠르게 입력 받을 수 있음. 특히 여러 줄의 입력을 처리할 때 성능 차이가 더 크게 느껴짐.

2. 개행 문자 처리

  • input()은 입력 받은 후 자동으로 개행 문자를 제거
  • sys.stdin.readline()은 입력 받은 줄의 끝에 개행 문자가 포함되어 반환 됨. 이를 처리하려면 rstrip()을 사용하여 개행문자를 제거해줘야함.

3. 사용 용도

  • input() 일반적인 사용자 입력을 받을 때 사용
  • sys.stdin.readline()은 대량의 입력을 처리하거나 코딩테스트 같은 상황에서 사용. 입력이 많을 때 효율적이고 빠르기 때문에 속도가 중요한 경우에 선호 됨.
# input() 예시
name = input()  # 사용자로부터 한 줄 입력 받기 (개행 문자 자동 제거)
print(name)

# sys.stdin.readline() 예시
import sys
name = sys.stdin.readline()  # 사용자로부터 한 줄 입력 받기 (개행 문자 포함)
name = name.rstrip()  # 개행 문자 제거
print(name)

4. 요약

  • 속도 : sys.stdin.readline()이 더 빠름
  • 개행 문자 처리 : input()은 자동으로 개행 문자를 제거. sys.stdin.readline()은 개행 문자를 포함해서 반환
  • 주 사용처 : input()은 일반적인 입력에, sys.stdin.readline()은 대량 입력이나 빠른 처리가 필요할 때 사용.

'프로그래밍 > python' 카테고리의 다른 글

파이썬 재활 - 1차원 배열 (리스트)  (0) 2025.02.24