디버깅의 중요성.. 코딩테스트 공부할 때도, 프로젝트 할 때도 매우 유용한 것이 디버깅인데, 그 중요성을 간과하고 있었다!
파이썬 디버깅 할 때 종종 쓰이는 다음 코드에 대해 알아보자.
if __name__ == "__main__":
// a
// b
__name__
이라는 변수의 값이 __main__
이라면 a, b라는 코드를 실행하라는 의미일 것이다.
하나하나 파헤쳐보자!
__name__
우선, __name__
은 현재 모듈의 이름을 담고 있는 내장 변수이다.
이 변수는 모듈이 직접 실행되었는지, 아니면 직접 실행되지 않고 import 되었는지 판단할 때 사용한다.
모듈이 직접 실행 ➡️ 문자열 "__main__""
이 할당
모듈 import ➡️ 해당 모듈의 이름(파일명)이 할당
📍 test.py
모듈 직접 실행해보기
# test.py
def func():
print("hello")
if __name__ == "__main__":
print("직접 실행")
print(__name__)
else:
print("import 했음")
print(__name__)
func()
📍 test.py
모듈 import 해보기
import test
코드를 직접 실행할 때와 모듈로 사용될 때 다르게 작동하는 경우가 있다면 이를 고려하여 모듈을 개발해야 한다.