파이썬/파이썬-AI 기본

파이썬으로 문자열 치환하기, 문자 하나만 바꾸는 경우

용사냥꾼69 2023. 2. 15. 11:42
728x90

문자 하나만 바꾸는 경우

  • [용사] 123 [짱] -> 용사 123 짱

이 경우, ' [ ' 와 ' ] ' 각각을 없앨 필요가 있다.

 

혹은 해당 문자를 다른 문자로 치환하고 싶고, 그러한 사전을 구성해야 할 필요가 있는 경우가 있다.

 

str.translate()

your_str = '[용사] 123 [짱]'

trans_dict = {'[':'', ']':''}

pat = str.maketrans(trans_dict)

changed_str = your_str.translate(pat)

print(changed_str)
### '용사 123 짱'

 

여기서 주의할 점은 치환 사전에는 길이가 1인 문자만 들어갈 수 있다는 것이다.

 

즉, 문자 하나의 치환만 가능하며 translate가 다른 메소드(replace, re.sub) 보다 빠르지만 잘 사용되지 않는 이유가 여기에 있다.

 

그러나 문자 하나의 치환을 목적으로 한다면 속도 측면에서나 사전식 관리의 유용함에서나 translate를 사용하는 것을 고려할만 하다고 생각한다.