반응형
Python에서 Beautiful Soup을 사용하여 HTML 파일에서 일부 데이터를 긁어냅니다. 경우에 따라 Beautiful Soup은 string
및 NoneType
개체를 모두 포함하는 목록을 반환합니다. 모든 NoneType
개체를 필터링하고 싶습니다.
Python에서 NoneType
객체를 포함하는 목록은 반복 할 수 없으므로 목록 이해는 이에 대한 옵션이 아닙니다. 특히 NoneTypes
를 포함하는 lis
목록이 있고 [x for x in lis (일부 조건 / 함수)]
에서 Python은 TypeError : 'NoneType'유형의 인수가 반복 가능하지 않습니다
오류를 발생시킵니다.
def filterNoneType(lis):
lis2 = []
for l in links: #filter out NoneType
if type(l) == str:
lis2.append(l)
return lis2
그러나 존재하는 경우 내장 Python 함수를 사용하고 싶습니다. 가능한 경우 항상 코드를 단순화하고 싶습니다. Python에 목록에서 NoneType
개체를 제거 할 수있는 내장 함수가 있나요?
해결 방법
이를 수행하는 가장 깨끗한 방법은 다음과 같습니다.
#lis = some list with NoneType's
filter(None, lis)
참조 페이지 https://stackoverflow.com/questions/14229433
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python의 중첩 된 JSON 사전 내에서 값 찾기 (0) | 2021.01.29 |
---|---|
파이썬 Python-OR 함수를 올바르게 사용 (0) | 2021.01.28 |
파이썬에서 한 줄의 코드에 n 개의 문자열을 어떻게 생성합니까? (0) | 2021.01.28 |
파이썬 Python으로 종속성 그래프 작성 (0) | 2021.01.28 |
파이썬 Python 없음 비교 : "is"또는 ==를 사용해야합니까? (0) | 2021.01.28 |
댓글