나단 키루 :
정의에 따라, 없음 키워드는 널 값, 또는 전혀 값을 정의하는 데 사용됩니다. 그런데 왜 않습니다 :
inputs = [3, 0, 1, 2, None]
print(list(filter(None, inputs)))
이 목록을 반환 [3,1,2]
하지 [3,0,1,2]
?
jonrsharpe :
경우 함수 인
None
, 식별 기능, 즉, 모든 요소 가정 반복 가능한 거짓 제거된다.
신원 기능은 기본적으로 :
def identity(something):
return something
그래서 값이 있음을 의미 필터링 평가 오류가-Y가 출력 대상에서 제외한다.
당신이 보면 다음 테스트 진리 값 당신은 그것을 볼 수 있습니다 뿐만 아니라으로None
, 0
파이썬에서 거짓-Y를 평가 :
여기에 대부분이다 내장 거짓으로 간주 제품 :
- 상수는 거짓으로 정의 :
None
와False
.- 모든 숫자 유형의 제로 :
0
,0.0
,0j
,Decimal(0)
,Fraction(0, 1)
- ...