목록이 비어 있는지 테스트했습니다. 일반적으로 저는 len (list) == 0을 사용합니다. 목록이 비어 있는지 테스트하는 올바른 방법은 그것이 참인지 거짓인지 여부를 잠시 전에 읽었던 것을 모호하게 기억했습니다.부울을 파이썬에서 테스트합니다.
그래서 목록을 False로 시도하고 False를 반환했습니다. 어쩌면 나는 ==을 사용하고 있다고 생각 하나? 아니요, false도 반환했습니다. list가 True이면 false가 반환되고 list == True가됩니다. Best way to check if a list is empty이
상단 대답은 :
if not a:
print "List is empty"
그래서 내가 좀 더 주위를 검색하고 파이썬 설명서에 결국 내가 빨리 구글을하고에 끝낼 수 있도록
는 지금은 혼란 스러워요 where 4.1 상태 :
모든 객체는 if 또는 while 조건에서 사용하거나 아래의 부울 연산의 피연산자로 사용할 수 있습니다. 다음 값은 false로 간주됩니다.
예 : '',(), [].
이제 나는 혼란 스럽다. 목록이 아닌 것처럼 목록을 테스트하면 정상적으로 작동합니다. 그러나 빈 목록이 거짓이면 list가 False이거나 list == False 인 경우 왜 그냥 할 수 없습니까?
감사
특히 [__nonzero__] (http://docs.python.org/reference/datamodel.html#object.%5F%5Fnonzero%5F%5F) 메소드가 호출됩니다. – ernie