파일로 입력받기
•
sys 모듈 import
•
표준 입력을 파일/읽기로 설정
import sys
# 표준 입력을 파일로 설정
sys.stdin = open("input.txt", "r")
Python
복사
한 줄을 읽어서 정수로 변환
•
input() : 한 줄을 읽어온다
•
int() : 정수로 변환
N = int(input())
print(N)
Python
복사
한 줄을 읽고, 공백으로 구분된 문자를 입력 받기
•
input().split(구분문자)
◦
한 줄을 읽고, 구분 문자로 나누어서 문자로 이뤄진 리스트로 입력 받는다.
print(input.split())
# a b c 를 입력하면
# ['a', 'b', 'c'] # 문자로 입력된다
Python
복사
한 줄을 일고, 공백으로 구분된 문자를 정수로 변환
•
map(형식, 리스트) : 리스트에 있는 데이터를 형식에 맞춰 변환한다.
N, M = map(int, input().split())
# 1 2 입력
print(N, M)
# 1 2 출력
Python
복사
이 경우, 위와 같이 리스트에 있는 요소와 개수에 맞춰서 변수의 개수를 해주어야 한다.
→ 이 명령은 내가 입력 받을 데이터의 개수를 명확히 알 때 사용하여야 한다.
1차원 배열(리스트) 입력 받기
•
map(int, input().split()) : 한 줄 입력 받아 공백으로 나눈 문자열 리스트를 int형으로 변환
•
list() : 괄호 안의 데이터를 리스트로 묶는다.
arr = list(map(int, input().split()))
# 1 2 3 4 5 입력
print(arr)
# [1, 2, 3, 4, 5]
# 숫자형 리스트로 입력 받아 arr 변수에 저장된다
Python
복사
이어진 숫자를 한 자리씩 나눠서 리스트에 저장 : 문자열 리스트로 저장
•
input() : 한 줄을 읽어온다 (구분문자가 없다 / 문자열로 읽어온다)
print(input())
# 12345 입력
# 12345 # 하나의 문자열로 출력된다
arr = list(input())
print(arr)
# ['1', '2', '3', '4', '5'] # 문자 하나씩을 리스트로 반환
Python
복사
이어진 숫자를 한 자리씩 나눠서 리스트에 저장 : 숫자형 리스트로 저장
•
map() 함수를 이용해서 문자열을 숫자로 변환한 후, list() 함수를 이용해서 리스트로 변환해준다.
arr = list(map(int, input()))
# 12345 입력
print(arr)
# [1, 2, 3, 4, 5] # 숫자형 리스트
Python
복사
N행으로 이뤄진 2차원 배열 입력 받기
•
리스트 내포 : 리스트를 생성할 때 반복문을 사용할 수 있도록 해준다.
N = int(input())
# 3
# 리스트 내포를 이용하여 N번 반복하며 한 줄 읽고,
# 공백 문자로 나눠서 숫자형으로 변환하고,
# 리스트 (1차원 배열)로 만들어 2차원 배열로 완성
arr = [list(map(int, input().split())) for _ in range(N)]
# 1 2 3
# 4 5 6
# 7 8 9
print(arr)
# [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
# 출력하면 2차원 리스트로 입력된 것 확인됨
Python
복사