즐겁게!! 자신있게!! 살아보세!!

재밌는 인생을 위하여! 영촤!

Dev Log/Python

[Dev log] Python 개행 문자(\n) 삭제 - map, lambda, strip

Godwony 2021. 1. 11. 10:39
728x90
반응형

 

f = open('abc.txt', 'r')
line = f.readlines()
line = list(map(lambda s: s.strip(), line))

 

* strip 메서드 : 문자열의 앞/뒤에서 특정 문자를 삭제하는 메서드입니다.

- text.strip(삭제할 문자)와 같이 사용하는데요, 삭제할 문자를 따로 지정하지 않으면 모든 종류의 blank 문자를 삭제합니다.

- 여기서 blank 문자는 스페이스, 탭, 뉴라인(개행 문자) 등이 있습니다.

- 물론 여기에서는 개행 문자를 삭제하기 위해 사용했지요.

 

* 람다 함수 (익명 함수)

- inline으로 간단히 함수를 사용할 때 쓰는 방법이 람다 합수입니다.

- 함수를 인자로 받는 다른 함수를 쓸 때 사용하면 코드가 훨씬 간단해지는데요, 일반 함수처럼 return문을 따로 지정할 필요가 없이 표현식으로 표시한 계산 결과가 바로 값으로 리턴됩니다.

- 위의 코드에서 사용한 것은 텍스트 스트링을 strip 해서 바로 리턴해 주는 함수가 람다 함수로 사용되었습니다.

 

* map 함수

- 맵 함수는 함수와 반복 가능한 자료형(iterable)을 입력으로 받아, 입력 자료형의 각각의 요소가' 함수에 의해 수행된 결과'를 모두 묶어서 리턴하는 함수입니다.

- 간단하게 설명하면, iterable 인 lines (텍스트 파일의 각각의 행)을 입력으로 하여 strip 람다 함수를 실행하여 나온 결과물 (개행 문자 등이 삭제된 텍스트)을 리턴하게 되는 것이죠.

 

* list 함수

- 반복 가능한 자료형(iterable)을 입력받아 리스트로 리턴하는 함수입니다.

- 리스트를 입력받으면 같은 내용의 리스트로 복사해서 리턴합니다.

- 여기에서는 map함수의 결과물인 텍스트 리스트 (개행 문자가 삭제된 텍스트의 집합)를 복사한 리스트가 리턴됩니다

728x90
반응형