[파이썬] 입출력 유형_01. input & map 함수 개념 정리

seonseon·2025년 2월 28일
0
post-thumbnail

공백을 기준으로 입력되는 정수 저장하기

  • 파이썬에서는 input() 함수로 표준 입력을 받는다.

📌 input()의 특징

✅ 입력받은 값을 항상 문자로 변환
✅ enter 이후 입력 값을 문자열로 반환하는 함수

📌 input()에서 읽어온 문자열을 공백 기준으로 분리하는 방법

input().split()
  • split() 뒤에 아무것도 안넣을 경우 자동으로 공백 기준으로 분리하여 문자열 리스트로 변환됨
  • split(",") 라고 넣을 경우 "," 기호 기준으로 분리하여 문자열 리스트로 변환됨

ex)

입력값  : 10 20 30
변환값 : ['10', '20', '30']

문자열 또는 문자열 리스트를 int로 변환하는 방법

📍 단일 값(문자열 -> int형 변환)

a = int(input())
  • 단일 값은 int(input()) 으로 문자열 -> int형으로 변환이 가능하다

📍 문자열 리스트 -> int형 변환

map() 함수

  • 반복 가능한 객체(리스트, 튜플) 등의 요소에 대해 지정한 함수를 적용한다.
  • 여러 요소에 동일한 작업을 해야 될 때 주로 사용한다.
A, B, C = map(int, input().split())

⭐ map()함수 활용 방법

✅ 리스트 형태로 변환하기

arr = list(map(int, input().split()))
  • 리스트 형태로 변환하면 인덱싱, 슬라이싱으로 활용할 수 있다.
# 인덱싱(특정 위치(인덱스)의 값을 가져오기)
print(arr[0])  # 첫 번째 값

#슬라이싱(리스트의 특정 범위 추출)
print(arr[1:4])  # 인덱스 1부터 3까지 출력(4는 포함되지 않음)

✅ 여러 개의 입력을 받는 경우(N×M 크기의 2차원 배열 입력)

N, M = map(int, input().split())  
matrix = [list(map(int, input().split())) for _ in range(N)]

N : 행(row)의 개수
M : 열(column)의 개수

각각 저장한 뒤, 리스트 컴프리헨션으로 N개의 행을 입력받아 2차원 리스트(배열)로 저장하는 코드

0개의 댓글