문자열 붙여서 출력하기
두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다.
입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요.
# 두 개의 문자열을 공백을 기준으로 입력 받음
str1, str2 = input().split()
# 두 문자열을 이어붙여 출력
print(str1 + str2)
- str1, str2 = input().split(): 사용자로부터 입력을 받습니다. input() 함수를 통해 사용자가 입력한 값을 받고, .split() 메서드를 통해 문자열을 공백을 기준으로 분리합니다. 분리된 부분 문자열들은 리스트에 담겨 반환되는데, 이 리스트의 각 요소들이 str1과 str2에 순서대로 할당됩니다.
- print(str1 + str2): str1과 str2를 이어붙여서 출력합니다. 이어붙이기 위해 + 연산자를 사용합니다. 이는 두 문자열을 연결하는 역할을 합니다.
**왜 split을 사용할까?
split() 메서드는 문자열을 특정 구분자를 기준으로 나누어 리스트로 반환합니다. 여기서는 공백을 기준으로 문자열을 나누어야 하므로 split() 메서드를 사용했습니다.
예를 들어, 사용자가 "hello world"와 같은 문자열을 입력했다면, 이 문자열은 공백을 기준으로 분리되어 "hello"와 "world" 두 개의 부분 문자열이 리스트에 담겨 반환됩니다. 이 부분 문자열들을 각각 str1과 str2에 할당하게 됩니다.
따라서 split() 메서드를 사용하여 사용자의 입력을 적절히 처리하여 두 문자열을 얻어낼 수 있습니다.
합치는 방식
만약 apple pen 이라는 인풋이 있다고 생각해 보자. 공백을 기준으로 a 값에는 apple 그리고 b 값에는 pen을 넣어서 붙여준다고 생각해 보자. 위에서는 두 가지 방식을 배웠다. 하나는 str으로 만들어 문자로 받고, 이후에 정수로 출력되게 Int로 넣는 것. 혹은 f 이용해서 f"{a}{b}"같은 형태로 출력하는 것. 그리고 정수로 Int 함수 이용해 바꾸는 것
str1과 str2을 이어서 출력하는 코드를 작성해 보세요.
str1, str2 = input().strip().split(' ')
print(str1 + str2)
첫줄부터 이해가 안될 수 있다. 자세히 뜯어보면 입력받고, strip 사용해 모든 공백 없애고, split 사용해 공백(' ') 기준으로 분리하기
- input(): 사용자로부터 입력을 받습니다. 이 함수는 사용자가 입력한 값을 문자열로 반환합니다.
- .strip(): 입력된 문자열의 양쪽에 있는 공백을 제거합니다. 사용자가 입력한 문자열에서 양쪽에 있는 모든 공백을 없앱니다.
- .split(' '): 문자열을 공백을 기준으로 분리합니다. 공백을 기준으로 분리된 부분 문자열들은 리스트에 담겨 반환됩니다.
- str1, str2 = ...: 분리된 부분 문자열들을 str1과 str2에 순서대로 할당합니다. 입력된 문자열을 공백을 기준으로 분리한 결과 중 첫 번째 부분 문자열이 str1에, 두 번째 부분 문자열이 str2에 할당됩니다.
이렇게 하면 변수 str1과 str2에는 입력된 문자열에서 양쪽 공백을 제거한 후, 공백을 기준으로 분리된 부분 문자열이 할당된다.
print(input().strip().replace(' ', ''))
'개발일기 [Python 파이썬]' 카테고리의 다른 글
[파이썬] for x in range 홀수 짝수에 따라 다른 값 & 순회하며 계산하는 반복자(iterator) (0) | 2024.03.14 |
---|---|
[파이썬02] [:n] range 숫자를 차례로 담은 리스트 (오름차순,내림차순) (0) | 2024.03.14 |
[파이썬] .upper() 소문자 -> 대문자 -> 소문자 .lower() 변경 (0) | 2024.03.14 |
[파이썬 문제풀이] 지그재그 숫자 (0) | 2024.03.13 |
[파이썬] 수 조작하기, 정수 찾기, 홀수찾기, 뒤에서 5등까지 (0) | 2024.03.13 |