728x90
반응형
질문 : 파이썬`x가 None이 아니면`아니면`x가 None`이 아니면?
if not x is None
버전이 아니라면 항상 더 명확하다고 생각했지만 Google의 스타일 가이드 와 PEP-8은 모두 if x is not None
사용합니다. 사소한 성능 차이가 있습니까 (그렇지 않다고 가정합니다), 하나가 실제로 맞지 않는 경우가 있습니까 (다른 하나가 내 컨벤션에서 확실한 승자로 만드는 경우)? *
None
아닌 모든 싱글 톤을 언급하고 있습니다.
... 없음과 같은 싱글 톤을 비교합니다. 사용 여부입니다.
답변
동일한 바이트 코드로 컴파일되므로 성능 차이가 없습니다.
>>> import dis
>>> dis.dis("not x is None")
1 0 LOAD_NAME 0 (x)
2 LOAD_CONST 0 (None)
4 COMPARE_OP 9 (is not)
6 RETURN_VALUE
>>> dis.dis("x is not None")
1 0 LOAD_NAME 0 (x)
2 LOAD_CONST 0 (None)
4 COMPARE_OP 9 (is not)
6 RETURN_VALUE
문체 적으로, 나는 not x is y
(not x) is y
라고 오해 할 수 있습니다. x is not y
모호함이 없습니다.
출처 : https://stackoverflow.com/questions/2710940/python-if-x-is-not-none-or-if-not-x-is-none
728x90
반응형
'프로그래밍 언어 > Python' 카테고리의 다른 글
파이썬에서 배열을 선언하는 방법 (0) | 2021.11.05 |
---|---|
Python에서 파일 압축 해제 하는 방법 (0) | 2021.11.05 |
파이썬에서 두 개의 datetime 객체 간의 시간 차이 확인 (0) | 2021.11.04 |
Python에서 파일 크기를 확인하는 방법 (0) | 2021.11.03 |
현재 Python 버전 확인하기 (0) | 2021.11.03 |