-
반응형
파이썬이란 언어를 코딩 테스트 준비하면서 처음 익혀서
필요한 문법이 나올 때마다 찾아가면서 공부하는 중입니다.
원래 사용자 입력을 받아야하는 상황이 나오면 거의 input()을 활용했는데, 찾아보니 input()을 사용하면 안 되는 경우와 복잡도가 올라가는 경우가 있다고 해서 input() vs sys.stdin.readline()을 정리해보려고 합니다.
아래의 문서를 참고하였습니다.
Difference between input() and sys.stdin.readline() - GeeksforGeeks
1. input() 작동
-input() function이 작동하면 사용자 입력이 들어올 때까지 그 입력을 위해 다른 것들을 멈춘다.
-사용자 입력을 받으면
사용자 입력 -> string형 -> 원하는 자료형으로 형변환을 해줘야 함
2. sys.stdin.readline() 작동
-한 줄의 문자열을 입력받으며 tab, enter, space와 같은 escape character 또한 입력받을 수 있다.
3. input() vs sys.stdin.readline()
-만약에 3*3의 int형 3차원 리스트를 입력받고 싶으면
-input()의 경우에는
9개의 입력을 각각 (입력-> string형 -> int형) 변환을 해준다.
-sys.stdin.readline()의 경우에는
3개의 문자열에 대해 형변환을 해준다.
아래의 입력 속도 비교가 정리되어있는 자료에서도 이를 수치적으로 확인할 수 있다.
반응형'IT > 따로 공부' 카테고리의 다른 글
VM(Virtual Machine) vs Container (0) 2021.08.02 [Git] warning: LF will be replaced by CRLF in (0) 2021.07.14 [Github] remote: Permission to <gitAddress> denied to <User> 오류 해결방법 (0) 2021.06.22 절차지향? 객체지향? (0) 2021.02.14 댓글