본문 바로가기

etc.

[Python] 입력 받기 (input(), sys.stdin.readline())

반응형

1. input()

가장 기본적인 입력 방식으로, 문자열을 입력받게 된다

숫자로 입력을 받고싶다면 다음과 같이 int형 변환을 해주어야 한다

 

str = input()
num = int(input())

 

input() 함수는 기본적으로 한 줄 단위로 입력을 받기 때문에

공백을 단위로, 쉼표를 단위로 나누고 싶을 때에는 다음과 같이 split() 함수를 이용한다

 

str = input().split() # 공백 단위
str_list = input().split(",") # 쉼표 단위

 

split() 함수는 리스트로 저장을 하게 된다

이를 독립적으로 변수에 저장하고 싶다면, 다음과 같이 map() 함수를 이용한다

 

str1, str2 = map( input().split() )
num1, num2 = map( int, input().split() ) # 정수형으로 독립적으로 저장

 


 

2. sys.stdin.readline()

이 역시 한 줄 단위로 입력받는 함수이지만, input() 함수보다 속도가 빠르다

(자바에서 Scanner보다 BufferedReader를 쓰는 느낌

snupi.tistory.com/48)

다음과 같이 이를 아예 input이라고 맨 위에 설정하고 사용하면, 한결 편할 수 있다

 

import sys

input = sys.stdin.readline()
_input = sys.stdin.readline().split() # 공백 단위로 입력받기

num1, num2, num3 = map( int, _input )

 

- 블로그 velog.io/@tbnsok40

반응형