Python - 문자열에서 줄바꿈(\n) 제거, 3가지 방법

문자열에서 \n는 줄바꿈(개행, newline)을 의미하고, print()로 출력 시, 줄바꿈이 되어 출력됩니다. 문자열에서 문자 \n를 삭제하고 싶을 때 사용할 수 있는 방법들을 소개합니다.

1. replace()를 이용하여 줄바꿈 문자 제거

replace(a, b)는 문자열의 a를 b로 변경해줍니다.

replace를 이용하여 아래와 같이 줄바꿈 문자를 공백으로 변경하여 제거할 수 있습니다.

str = "\n Hello world, Python! \n"
new_str = str.replace("\n", "")
print("[" + new_str + "]")

Output:

[ Hello world, Python! ]

2. re.sub()를 이용하여 줄바꿈 문자 제거

re.sub(pattern, replacement, str)은 문자열 str에서 pattern과 일치하는 내용을 replacement로 변경합니다.

이것을 이용하여 아래와 같이 줄바꿈 문자를 공백으로 변경하여 제거할 수 있습니다.

import re

str = "\n Hello world, Python! \n"
new_str = re.sub("\n", "", str)
print("[" + new_str + "]")

Output:

[ Hello world, Python! ]

3. strip()을 이용하여 줄바꿈 문자 제거

strip()은 문자열의 시작과 끝에 있는 줄바꿈과 공백을 제거합니다.

아래와 같이 문자열의 앞 뒤에 공백과 줄바꿈 문자가 있을 때 strip()을 사용하여 모두 제거할 수 있습니다.

str = "\n Hello world, Python! \n"
new_str = str.strip()
print("[" + new_str + "]")

Output:

[Hello world, Python!]

3.1 rstrip(), lstrip()

strip()은 문자열 앞, 뒤의 공백과 줄바꿈을 제거하는데, 앞쪽만 제거하거나 뒤쪽만 제거할 수 있습니다.

아래와 같이 lstrip()은 문자열의 왼쪽의 줄바꿈, 공백을 제거하고 rstrip()은 문자열 오른쪽의 줄바꿈과 공백을 제거합니다.

str = "\n Hello world, Python! \n"
new_str = str.lstrip()
print("[" + new_str + "]")

new_str = str.rstrip()
print("[" + new_str + "]")

Output:

[Hello world, Python!
]
[
 Hello world, Python!]

4. print()에서 기본으로 추가되는 줄바꿈 제거

print()로 문자열을 출력하면 문자열에 줄바꿈 문자가 없어도, 문자열의 내용을 모두 출력하고 줄바꿈합니다.

print("Hello!")
print("World!")
print("Python!")

Output:

Hello!
World!
Python!

만약 자동으로 줄바꿈하지 않도록 하고 싶다면, 아래와 같이 end 인자를 전달하면 됩니다.

print("Hello!", end='')
print("World!", end='')
print("Python!", end='')

Output:

Hello!World!Python!

end 인자로 공백 대신에 다른 문자열을 전달하면 아래와 같이 그 문자열이 마지막에 출력됩니다.

print("Hello!", end=', ')
print("World!", end=', ')
print("Python!", end=', ')

Output:

Hello!, World!, Python!,
Loading script...
codechachaCopyright ©2019 codechacha