반응형
Python3 not의 코드 스타일
작성 계기
필자는 C/C++/C#을 주로 접한다음에 Python 을 접했기 때문에 해당 언어들은 관례상 not 연산자 !을 주로 앞에 쓰는 경우가 있다. 이유는 !는 눈에 비교적 잘 보이기 때문에 가독성을 위해서 그렇게 쓰는 버릇이 있기 때문이다. 하자만, 파이썬에서의 경우는 not 이라는 키워드를 직접 입력하기 때문에 C/C++/C#의 스타일과 다소 차이가 있다. 다만, 워낙 친인간적인 언어다 보니까 영문법과 같이 사용하는 것을 권장한다.
not의 코딩 스타일
다음은 코딩 스타일 비교이다. 결과적으로는 둘다 같은 결과를 얻을 수 있다.
전통적인 스타일
예시)
>>>tmpNum = 1
>>>not type(tmpNum) is str
True
>>>not type(tmpNum) is int
False
구글 코딩 스타일
예시)
>>>tmpNum = 1
>>>type(tmpNum) is not str
True
>>>type(tmpNum) is not int
False
어떤 방식이 좋은가?
두 예시에서 보듯이 결과적으로는 같기 때문에 사실은 상관이 없다. 하지만, 구글 코딩 스타일을 더 권장을 하는데, 이유는 앞에 괄호 없이 not이 있다보면, 가독상 사람입장에서는 (not type(tmpNum)) is str 으로 읽은 가능성이 있고, 경우에 따라서 잘못 의미를 해석할 수 있기 때문이다. 그밖에 성능상에서도 큰 차이는 없다.
반응형
'Python > Python3' 카테고리의 다른 글
[Python3]selenium 모듈 에러 노트 (0) | 2019.05.21 |
---|---|
[python3]os.path 모듈 (0) | 2019.05.04 |
[Python3]삼항연산자(Ternary operators) (0) | 2019.04.30 |
[python3]타입검사(Type Check) (0) | 2019.04.23 |
[Python3]Str(문자열)의 편리한 기능들 (0) | 2019.04.20 |