본문 바로가기
Python/Data Structure

[Python] 리스트 안의 이스케이프 문자 일괄 소거하기

by 전봇대파괴자 2021. 8. 20.

 

웹 크롤링으로 텍스트를 긁어오거나, 로컬 경로 내 파일을 불러올 때,

문자열 안에 이스케이프 문자(\n)가 들어있을 때가 있습니다. 

그냥 문자열이라면 replace를 쓸 수 있지만, 리스트 안에 들어있는 값마다 이런 이스케이프 문자들이 들어있다면 골치가 아파지죠. 리스트 안의 문자열이 많을수록 더욱. 

 

# 샘플 리스트
sample_list = ['\n일상의새벽\n', '\n회자정리(會者定離)\n', '\nIf The World Was Ending\n', '\n무제 (11)\n', '\nBlood//Water\n', '\n인因(5)\n', '\n2020-03 백업 05\n', '\nOur Shining Days\n', '\n난파선\n', '\n놀이터\n']

 

위의 리스트는 실제로 제가 크롤링한 데이터 중 일부입니다. 보다시피 모든 문자열에 이스케이프 문자가 들어가 있는 걸 볼 수 있습니다.

그렇지만 이런 골치아픈 이스케이프 문자도 아래의 방법으로 간단히 소거할 수 있습니다.

 

# 방법 1
sample_list = [text.strip() for text in sample_list]

 

다른 방법도 있습니다.

# 방법 2
sample_list = list(map(lambda x : x.strip(), sample_list))

 

결과는 아래와 같습니다.

 

['일상의새벽', '회자정리(會者定離)', 'If The World Was Ending', '무제 (11)', 'Blood//Water', '인因(5)', '2020-03 백업 05', 'Our Shining 
Days', '난파선', '놀이터']