데브허브 | DEVHUB | Did you know about this in Python?Did you know about this in Python?
- 파이썬 파일이 다른 파일에 모듈로 임포트될 때, 임포트된 파일의 모든 코드가 실행되어 의도치 않은 동작을 유발할 수 있습니다. 🔄
- 예를 들어,
calculator.py 파일이 직접 실행될 때와 모듈로 임포트될 때 모두 초기화 메시지("this is a simple calculator")가 출력되는 문제가 발생합니다. ⚠️
if __name__ == "__main__": 구문은 파이썬 스크립트가 직접 실행될 때만 특정 코드 블록을 실행하도록 제어하는 표준적인 방법입니다. 🎯
- 이 구문 내의 코드는 해당 모듈이 다른 스크립트에 의해 임포트될 경우에는 실행되지 않습니다. 🚫
- 이를 통해 개발자는 스크립트를 독립적으로 실행 가능한 애플리케이션으로 만들면서 동시에 다른 프로그램에서 재사용 가능한 모듈로도 활용할 수 있게 됩니다. 🛠️
if __name__ == "__main__":을 적용하면, calculator.py를 직접 실행할 때는 정상 작동하고, program.py에서 임포트할 때는 불필요한 초기화 코드가 실행되지 않아 깔끔한 모듈 재사용이 가능해집니다. ✅