2013-03-20 4 views
0

, 다음을 수행 할 수있는 가장 바람직한 (파이썬) 방법은 무엇 :우아한리스트 조작 파이썬에서

당신은 목록이 제공됩니다. 목록이 비어 있지 않으면 목록의 모든 항목이 문자열로 보장됩니다. 목록의 각 항목은 빈 문자열이거나 해당 항목에 isdigit()이 호출되면 True을 반환합니다.

빈 문자열을 제외하고 원래 목록의 모든 항목을 포함하도록 목록을 작성하는 가장 우아한 방법은 무엇입니까? 기본 ID 기능 (None)와 filter()를 사용

+1

내가 무엇이든 내가 시도한 것은 질문에 관련이없는 것 같다. – chefsmart

+0

관련성이 있습니다. 그리고 먼저 시도해 보았 음을 보여주는 것이 좋습니다. –

+0

당신은 그것이 관련성이있을 수 있지만 당신은 어떻게 말하지 않았다고 말할 수 있습니다. 그래서 내가 물어 보도록하겠습니다. 정확히 얼마나 관련이있을 수 있습니까? 그리고 당신은 왜 내가 가장 먼저 만든 노력에 달려 있다고 대답하겠습니까? – chefsmart

답변

6

:

newlist = filter(None, origlist) 

대안 지능형리스트 :

newlist = [el for el in origlist if el] 
+0

고마워요,하지만 어느 쪽을 선택 하시겠습니까? – chefsmart

+0

@chefsmart : Python 2 :'filter()'. 파이썬 3 :'filter()'또는리스트 이해력. 이터레이터가 할 일에 따라 또는리스트를 가져야 할 경우 *. –

+0

@chefsmart '필터'가 분명하지 않다고 생각하기 때문에 대부분의 사람들이 두 번째 것을 보증 하겠지만 이것은 논란의 여지가있는 결정이라고 말하고 싶습니다. 나는 처음이 좋아. 그것은 또한'filter (bool, origlist)'로 쓸 수 있습니다. – jamylak