문자열 함수 Punctuation - 문자열의 쉼표와 마침표 등의 구두점 제거하기

# String - Punctuation

문장의 데이터를 구분시 쉼표(,)나 마침표(.) 혹은 느낌표, 물음표 등의 구두점이 존재한다.

공백으로 문장의 데이터를 구분하기에는 이러한 구두점까지 같이 데이터에 포함이 되므로

구두점을 제거하여 값을 따로 저장해주는 것이 좋다.

이럴 때 사용하는것이 string 함수의 punctuation 이다.


# punctuation을 활용하여 구두점 제거하기

  • punctuation은 string 내부 모듈에 포함되어 있다.
  • 이를 사용하기 위해서는 모듈을 호출해주어야 한다.
import string # 문자열을 다루는 모듈 호출

string.punctuation
>>> !"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~

 

1. 구두점을 제거

  • 반복문을 통해 한글자씩 구두점을 확인하고 구두점이 아니면 변수에 한글자씩 새로 저장
Test = 'Hello Mr. Future. I am so happy to be learning AI now~'
# 문자열을 담은 변수 선언

Test_punc_removed = []
# 문자열 변수의 구두점을 제거하고 저장 할 변수 초기화

for char in Test:
  if char not in string.punctuation:
    Test_punc_removed.append(char)
# 반복문을 통해 한글자씩 구두점을 확인하여 없을 경우에 한글자씩 추가

 

2. 문자열 합치기

  • 구두점을 빼고 새로운 변수에 한글자씩 저장되었기 때문에 이를 다시 하나의 문자열로 다시 합치기
  • join 함수를 이용
Test_punc_removed
>>>
['H',
 'e',
 'l',
 'l',
 'o',
 ' ',
 'M',
 'r',
 ' ',
 'F',
 'u',
 't',
 'u',
 'r',
 'e',
 ' ',
 'I',
 ' ',
 'a',
 'm',
 ' ',
 's',
 'o',
 ' ',
 'h',
 'a',
 'p',
 'p',
 'y',
 ' ',
 't',
 'o',
 ' ',
 'b',
 'e',
 ' ',
 'l',
 'e',
 'a',
 'r',
 'n',
 'i',
 'n',
 'g',
 ' ',
 'A',
 'I',
 ' ',
 'n',
 'o',
 'w']
 
 Test_punc_removed_join = ''.join(Test_punc_removed)
 # join으로 문자열 합친 후 새로운 변수에 저장
 
 Test_punc_removed_join
 >>> Hello Mr Future I am so happy to be learning AI now