컴퓨터공학 💻 도서관📚
파이썬으로 값을 입력 받는 방법들 본문
sys 는 System-specific parameters and functions의 약자로, python interpreter가 제공하는 변수와 함수를 직접 제어할 수 있게 해주는 모듈이다.
* sys.stdin.readline() 사용시 주의사항
sys.stdin.readline()은 한줄 단위로 입력받기 때문에, 개행문자가 같이 입력 받아진다.
만약 3을 입력했다면, 3\n 이 저장되기 때문에, 개행문자를 제거해야 한다.
또한, 변수 타입이 문자열 형태(str)로 저장되기 때문에, 정수로 사용하기 위해서 형변환을 거쳐야 한다.
* 문자열 n줄을 입력받아 리스트에 저장할 때
# 입력
# 3
# Betty Boolean
# Alison Addaway
# Carrie Carryon
* append 함수와 input 함수를 활용하는 방법
student = []
n = int(input())
for _ in range(n):
student.append(input()) # 좀 간단해 보임
* sys.stdin.readline() 을 활용하는 방법
import sys
n = int(sys.stdin.readline())
data = [sys.stdin.readline().strip() for i in range(n)] # 배열 선언하면서 함
strip()은 문자열 맨 앞과 맨 끝의 공백문자를 제거한다.
* 임의의 개수의 정수를 한줄에 입력받을 때
# 입력
# Testcase 1
# 2 3 1 2 2
# Testcase 2
# 23122
* map 함수와 list 함수를 이용하여 입력받는 방법 :
# Testcase 1
data = list(map(int, input().split()))
# Testcase 2
data = list(map(int, input()))
data.append(list(map(int, input())))
변수를 여러 개 받을 거면 list로 받든지, 아니면 여러 개의 변수(그릇)를 선언해줘서 입력받을 그릇을 만들어 주기
* sys.stdin.readline() 을 활용하는 방법 :
# Testcase 1
import sys
data = list(map(int,sys.stdin.readline().split()))
* 정해진 개수의 정수를 여러 줄에 입력받을 때
# 입력 (n이 3 일 때)
3
4
2
for i in range(n):
array.append(int(input())
* 한 줄에 여러 문자를 입력받을 때
# 입력 : R R R U D D
data = input().split()
문자이기 때문에 정수와는 다르다 / 컴퓨터는 공백도 문자로 취급한다
* 정해진 개수의 정수를 한줄에 입력받을 때
# 입력
# 1 2
* map 함수 없이 간단하게 입력 받는 방법
n = int(input())
for i in range(2 * n - 1):
a, b = input().split() # 좀 간단해 보임
* map 함수를 이용하여 입력받는 방법 :
T = int(input()) #Test case
for i in range(T):
a, b = map(str, input().split()) # 이제 이건 좀 외우자
print(a+b)
map(A, B) : B의 각 요소에 A함수를 적용하라
* sys.stdin.readline() 을 활용하는 방법 :
import sys
T = int(input()) #Test case
for i in range(T):
a,b = map(int, sys.stdin.readline().split()) # map 함수 안에서 input 함수 대신 씀
print(a+b)
반복문으로 여러줄 입력받는 상황에서는 반드시 sys.stdin.readline()을 사용해야 시간초과가 발생하지 않는다
참고 )
'💻☕프로그래밍 언어 > Python' 카테고리의 다른 글
파이썬 문자열을 거꾸로 출력하기 (0) | 2024.10.27 |
---|---|
파이썬 리스트 함수 삼형제 (pop, remove, index) (0) | 2024.10.27 |
파이썬 join 함수 간단 정리 (0) | 2024.10.27 |
파이썬 sort함수 사용법 간단 정리 (0) | 2024.10.18 |
map함수는 이름이 왜 map함수인가??? (2) | 2023.12.30 |