파이썬 잘 안 해서 항상 헷갈리는 부분 정리 해 보았습니다.
1. sys.stdin.readline()
sys.stdin.readline()은 Python에서 표준 입력을 통해 한 줄의 입력을 받을 때 사용하는 함수
이 함수는 전체 줄을 입력받은 후, 마지막에 줄바꿈 문자(\n)를 포함한 문자열을 반환
보통 input() 함수와 비슷한 역할을 하지만, 성능이 더 빠르고 대량의 데이터를 처리할 때 더 효율적임.
특히 파일이나 파이프라인에서 데이터를 읽을 때 유용하다고 알려져 있다.
2. 사용법
✅ 기본 사용법
import sys // sys 모듈 가져오기
# 한 줄 입력 받기
line = sys.stdin.readline()
# 출력
print("입력한 내용:", line)
✅ 입력 받은 후 줄바꿈(\n) 제거
sys.stdin.readline()은 기본적으로 입력된 문자열의 끝에 줄바꿈 문자를 포함하므로, 줄바꿈을 제거하고 싶다면
.strip() 또는 .rstrip()을 사용해줘야 함.
import sys
# 한 줄 입력 받기
line = sys.stdin.readline().strip() # or rstrip()
# 출력
print("입력한 내용:", line)
✅ 입력이 여러 줄일 때
여러 줄 입력을 받을 때는 sys.stdin.read()를 사용하거나 sys.stdin.readline()을 반복문에서 여러 번 호출하여 처리
import sys
# 예시: 3줄 입력 받기
for _ in range(3):
line = sys.stdin.readline().strip()
print("입력한 내용:", line)
import sys
# 입력할 줄 수를 미리 알고 있다면, 반복문을 통해 여러 줄 입력 처리
n = int(sys.stdin.readline().strip()) # 첫 줄에 입력할 줄 수 입력
lines = []
for _ in range(n):
line = sys.stdin.readline().strip() # 줄바꿈 제거
lines.append(line)
print(lines)
✅ 입력 받아서 리스트 형식으로 변환
list(map(int, sys.stdin,readline().split()))
import sys
# 한 줄에 숫자를 입력받고, 이를 리스트로 변환
numbers = list(map(int, sys.stdin.readline().split()))
print(numbers)
✅ sys.stdin.readline() vs input()
- 결론적으로 입력이 적으면 input() 쓰면 된다.
- 파일이나 파이프에서 대용량 데이터 읽을 때는 sys.stdin.readline() 이 빠르다.
- sys.stdin.readlin()은 줄바꿈 문자를 포함하므로, 필요에 따라 .strip()을 사용해 제거 해 줘야 한다.
- 여러 줄 입력을 받을 때는 for문 돌리거나 sys.stdin.read()를 사용하자.


'Python' 카테고리의 다른 글
[Python] 파이썬으로 엑셀 데이터 나누기 split(), dict, pandas (3) | 2025.01.11 |
---|---|
[Python] VSCode에서 파이썬 사용하는 법 (12) | 2024.12.28 |
공공데이터(오픈 API)란? feat. 구글 코랩 Google Colab 추천 & 단축키 (55) | 2024.12.22 |
[Python] 내 파이썬 설치 경로는 어디에? (50) | 2024.12.22 |
[Python] ✨ 파이썬 리스트 슬라이싱 총정리 ✨ (10) | 2024.11.06 |
파이썬 잘 안 해서 항상 헷갈리는 부분 정리 해 보았습니다.
1. sys.stdin.readline()
sys.stdin.readline()은 Python에서 표준 입력을 통해 한 줄의 입력을 받을 때 사용하는 함수
이 함수는 전체 줄을 입력받은 후, 마지막에 줄바꿈 문자(\n)를 포함한 문자열을 반환
보통 input() 함수와 비슷한 역할을 하지만, 성능이 더 빠르고 대량의 데이터를 처리할 때 더 효율적임.
특히 파일이나 파이프라인에서 데이터를 읽을 때 유용하다고 알려져 있다.
2. 사용법
✅ 기본 사용법
import sys // sys 모듈 가져오기 # 한 줄 입력 받기 line = sys.stdin.readline() # 출력 print("입력한 내용:", line)
✅ 입력 받은 후 줄바꿈(\n) 제거
sys.stdin.readline()은 기본적으로 입력된 문자열의 끝에 줄바꿈 문자를 포함하므로, 줄바꿈을 제거하고 싶다면
.strip() 또는 .rstrip()을 사용해줘야 함.
import sys # 한 줄 입력 받기 line = sys.stdin.readline().strip() # or rstrip() # 출력 print("입력한 내용:", line)
✅ 입력이 여러 줄일 때
여러 줄 입력을 받을 때는 sys.stdin.read()를 사용하거나 sys.stdin.readline()을 반복문에서 여러 번 호출하여 처리
import sys # 예시: 3줄 입력 받기 for _ in range(3): line = sys.stdin.readline().strip() print("입력한 내용:", line)
import sys # 입력할 줄 수를 미리 알고 있다면, 반복문을 통해 여러 줄 입력 처리 n = int(sys.stdin.readline().strip()) # 첫 줄에 입력할 줄 수 입력 lines = [] for _ in range(n): line = sys.stdin.readline().strip() # 줄바꿈 제거 lines.append(line) print(lines)
✅ 입력 받아서 리스트 형식으로 변환
list(map(int, sys.stdin,readline().split()))
import sys # 한 줄에 숫자를 입력받고, 이를 리스트로 변환 numbers = list(map(int, sys.stdin.readline().split())) print(numbers)
✅ sys.stdin.readline() vs input()
- 결론적으로 입력이 적으면 input() 쓰면 된다.
- 파일이나 파이프에서 대용량 데이터 읽을 때는 sys.stdin.readline() 이 빠르다.
- sys.stdin.readlin()은 줄바꿈 문자를 포함하므로, 필요에 따라 .strip()을 사용해 제거 해 줘야 한다.
- 여러 줄 입력을 받을 때는 for문 돌리거나 sys.stdin.read()를 사용하자.


'Python' 카테고리의 다른 글
[Python] 파이썬으로 엑셀 데이터 나누기 split(), dict, pandas (3) | 2025.01.11 |
---|---|
[Python] VSCode에서 파이썬 사용하는 법 (12) | 2024.12.28 |
공공데이터(오픈 API)란? feat. 구글 코랩 Google Colab 추천 & 단축키 (55) | 2024.12.22 |
[Python] 내 파이썬 설치 경로는 어디에? (50) | 2024.12.22 |
[Python] ✨ 파이썬 리스트 슬라이싱 총정리 ✨ (10) | 2024.11.06 |