1. python 입력
1.1. input()
기본적인 입력방식이며 input() 함수는 str 로 입력을 받는다
str1 = input()
num1 = int(input())
1.2. input.split()
split 은 구분자를 통해 문장을 나눠서 입력 받고 이를 배열 형태로 저장한다.
default 구분자는 공백 (' ') 이다.
str1 = input().split()
1.3. map([자료형], input().split())
map 은 입력을 받아서 split 한후 spread 형태로 변수에 값을 할당한다.
주의할점은 입력받는 변수의 개수가 내가 직접 지정한 변수의 개수와 일치하여야 한다. 그렇지 않으면 아래 이미지 밑쪽의 에러가 나온다
a, b, c = map(int, input().split())
d, e, f = map(str, input().split())
1.4. readline (한줄 입력 받기)
readline 은 import 를 요한다.
readline 은 기본적으로 문장끝에 존재하는 개행도 입력을 받는다.
하지만 split() 으로 나눠서 받을 때는 개행('\n') 이 안받아진다. --> 이는 확인이 필요함
import sys
readLineStr = sys.stdin.readline()
readLineList = sys.stdin.readline().split()
1.5. 2차원 배열의 입력
문제를 풀다보면 n 행 m 열의 데이터를 2차원 배열로 받아야 하는 경우가 있다.
여러가지 방법이 있겠지만 아래 방식이 많이 보이는 듯 하다.
# n 행 m 열 배열
n, m = map(int, input().split())
graph = []
for i in range(n):
graph.append(list(map(int, input())))
print(graph)
1.6. n차원 배열 생성(초기화까지)
문제를 풀다보면 n 차원 배열을 초기화 해야하는 경우가 발생한다.
특히 그래프문제에서는 n 차원 문제에서 방문체크를 위해 방문배열을 만드는 경우가 많아서 이에 대해 정리한다
row, column, level = map(int, input().split())
array2D = [[0 for _ in range(column)] for _ in range(row)]
array3D = [[[0 for _ in range(column)] for _ in range(row)] for _ in range(level)]
2차원 배열 요소접근
array2D[row][column]
3차원 배열 요소접근
array3D[level][row][column]
'PS(Problem Solving) > python 개념, stl 정리' 카테고리의 다른 글
[python] 파이썬 인접행렬, 인접리스트 구현(PS 를 위한) (0) | 2023.02.13 |
---|