프론트엔드/알고리즘
파이썬 Python | 입력 처리의 모든 것: 정수와 문자열에서 2차원 배열까지
YUNI Heo
2024. 6. 12. 21:10
반응형
⭕ 파이썬 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차원 배열 형태로 저장하는 리스트입니다.
반응형