본문 바로가기
프론트엔드/알고리즘

파이썬 Python | 입력 처리의 모든 것: 정수와 문자열에서 2차원 배열까지

by YUNI Heo 2024. 6. 12.
반응형

 

⭕ 파이썬 Python | 입력 처리의 모든 것: 정수와 문자열에서 2차원 배열까지

정수

➡️  ⭐ ⭐ ⭐ 한 줄을 입력받기

한 줄에 입력된 여러 값을 정수로 변환하여 변수에 저장하는 방법입니다.

# 한 줄을 입력받아 정수로 변환
a, b = map(int, input().split())
print(a, b)  # 예시 입력: 3 5, 출력: 3 5

 

 

  • input(): 사용자로부터 한 줄의 문자열 입력을 받습니다. 예시: "3 5"
  • split(): 입력받은 문자열을 공백을 기준으로 분리하여 리스트로 반환합니다. 예시: ["3", "5"]
  • map(int, ...): split()으로 분리된 문자열 리스트의 각 요소를 정수로 변환합니다. 예시: [3, 5]
  • a, b = ...: 변환된 정수 리스트의 값을 각각 a와 b 변수에 저장합니다.

 

 

➡️ 리스트를 통해 한 줄을 입력받기

한 줄에 입력된 여러 값을 정수 리스트로 변환하여 저장하는 방법입니다.

# 한 줄을 입력받아 정수 리스트로 변환
numbers = list(map(int, input().split()))
print(numbers)  # 예시 입력: 1 2 3 4 5, 출력: [1, 2, 3, 4, 5]

 

  • input(): 사용자로부터 한 줄의 문자열 입력을 받습니다. 예시: "1 2 3 4 5"
  • split(): 입력받은 문자열을 공백을 기준으로 분리하여 리스트로 반환합니다. 예시: ["1", "2", "3", "4", "5"]
  • map(int, ...): split()으로 분리된 문자열 리스트의 각 요소를 정수로 변환합니다. 예시: [1, 2, 3, 4, 5]
  • list(): map 객체를 리스트로 변환하여 numbers 변수에 저장합니다.

 

 

문자열

➡️ 한 줄을 입력받기

한 줄에 입력된 여러 문자열을 각각의 변수에 저장하는 방법입니다.

# 한 줄을 입력받아 문자열로 나눠서 저장
a, b = input().split()
print(a, b)  # 예시 입력: hello world, 출력: hello world

 

  • input(): 사용자로부터 한 줄의 문자열 입력을 받습니다. 예시: "hello world"
  • split(): 입력받은 문자열을 공백을 기준으로 분리하여 리스트로 반환합니다. 예시: ["hello", "world"]
  • a, b = ...: 분리된 문자열 리스트의 값을 각각 a와 b 변수에 저장합니다.

 

 

➡️ 리스트를 통해 한 줄을 입력받기

여러 줄의 입력을 리스트에 저장하는 방법입니다.

# 여러 줄의 입력을 받아 리스트에 저장
n = 3  # 입력받을 줄의 수
strings = [input() for _ in range(n)]
print(strings)  # 예시 입력: first second third, 출력: ['first', 'second', 'third']

 

  • n: 입력받을 줄의 수를 나타내는 변수입니다. 예시에서는 3입니다.
  • range(n): 0부터 n-1까지의 숫자를 생성합니다. 예시에서는 0, 1, 2
  • for _ in range(n): n번 반복하면서 입력을 받습니다. 여기서 _는 반복 변수로 사용되지 않음을 의미합니다.
  • input() for _ in range(n): 각 줄의 입력을 받아 리스트에 저장합니다.
  • strings: 입력된 문자열들을 저장하는 리스트입니다.

 

 

2차원 배열

➡️ 한 줄 띄어쓰기 "없이", 2차원 배열을 입력받기

한 줄 띄어쓰기 없이 정수를 여러 개 받았을 때, 2차원 배열 형태로 저장하는 방법입니다.

# 한 줄 띄어쓰기 없이, 2차원 배열을 입력받기
n = 3  # 입력받을 줄의 수
array = [list(map(int, input())) for _ in range(n)]
print(array)  # 예시 입력: 123 456 789, 출력: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

 

  • n: 입력받을 줄의 수를 나타내는 변수입니다. 예시에서는 3입니다.
  • range(n): 0부터 n-1까지의 숫자를 생성합니다. 예시에서는 0, 1, 2
  • input(): 사용자로부터 한 줄의 문자열 입력을 받습니다. 예시: "123"
  • map(int, input()): 입력받은 문자열의 각 문자를 정수로 변환합니다. 예시: [1, 2, 3]
  • list(map(int, input())): 변환된 정수들을 리스트로 저장합니다. 예시: [1, 2, 3]
  • array: 여러 줄의 입력을 받아 2차원 배열 형태로 저장하는 리스트입니다.

 

 

➡️ 한 줄에 띄어 쓰기가 "있는", 2차원 배열을 입력받기

한 줄에 띄어쓰기가 있는 배열을, 여러 개의 줄을 통해 입력받을 때, 2차원 배열 형태로 저장하는 방법입니다.

# 한 줄에 띄어 쓰기가 있는, 2차원 배열을 입력받기
n = 3  # 입력받을 줄의 수
array = [list(map(int, input().split())) for _ in range(n)]
print(array)  # 예시 입력: 1 2 3 / 4 5 6 / 7 8 9, 출력: [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
  • n: 입력받을 줄의 수를 나타내는 변수입니다. 예시에서는 3입니다.
  • range(n): 0부터 n-1까지의 숫자를 생성합니다. 예시에서는 0, 1, 2
  • input(): 사용자로부터 한 줄의 문자열 입력을 받습니다. 예시: "1 2 3"
  • split(): 입력받은 문자열을 공백을 기준으로 분리하여 리스트로 반환합니다. 예시: ["1", "2", "3"]
  • map(int, input().split()): 분리된 문자열 리스트의 각 요소를 정수로 변환합니다. 예시: [1, 2, 3]
  • list(map(int, input().split())): 변환된 정수들을 리스트로 저장합니다. 예시: [1, 2, 3]
  • array: 여러 줄의 입력을 받아 2차원 배열 형태로 저장하는 리스트입니다.
반응형