티스토리 뷰

반응형

Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.

Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.

 

아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.

Remove empty strings from a list of strings

문자열 리스트에서 빈 문자열 제거

 문제 내용 

I want to remove all empty strings from a list of strings in python.

파이썬의 문자열 리스트에서 빈 문자열을 모두 제거하고 싶습니다.

 

My idea looks like this:

제 생각은 이렇습니다.
while '' in str_list:
    str_list.remove('')

 

Is there any more pythonic way to do this?

이것을 하는 더 파이썬스러운 방법이 있을까요?

 

 

 

 높은 점수를 받은 Solution 

I would use filter:

저는 필터를 사용합니다.
str_list = filter(None, str_list)
str_list = filter(bool, str_list)
str_list = filter(len, str_list)
str_list = filter(lambda item: item, str_list)

 

Python 3 returns an iterator from filter, so should be wrapped in a call to list()

파이썬 3은 필터에서 이터레이터를 반환하므로 list()로 감싸야 합니다.

 

str_list = list(filter(None, str_list))

 

 

 가장 최근 달린 Solution 

You can use something like this

이런 거 써도 돼요.
test_list = [i for i in test_list if i]

 

where test_list is list from which you want to remove empty element.

여기서 test_list는 빈 요소를 제거할 리스트입니다.

 

 

 

출처 : https://stackoverflow.com/questions/3845423/remove-empty-strings-from-a-list-of-strings

반응형
댓글
공지사항
최근에 올라온 글