.py와 .ipynb
.py와 .ipynb
⚪ .py
?
예전부터 깃헙에 있는 오픈 소스를 보면 매번 의문이 들었던 것이 바로.py
파일이었다.
나는 작업을 주피터 노트북
.ipynb
로 하는데… 진짜 프로들은.py
하드코어하게 코딩을 하는 것일까?
그래서 왠지 .ipynb
파일은 깃허브에 올리기도 민망했고 심지어 포맷❗도 지원해주지 않는다.
하지만 이제 git을 사용하는 입장에서 배우기 귀찮다고 내가 하던 방식만 고수하지 말고, 천천히 공부하면서 받아들이기로 했다.
🟡 셰프의 주방(.ipynb
) vs. 공개용 레시피 카드(.py
)
.ipynb
(주피터 노트북): 여기는 아이디어를 실험하는 ‘나만의 주방’.py
(파이썬 스크립트): 이건 최종적으로 완성된 ‘공개용 레시피 카드’
말그대로 .ipynb
는 내 의식의 흐름대로 이것저것 해보는 것이고 .py
는 이렇게 정리된 생각을 잘 정돈해서 내놓는 코드라고 보면 된다.
따라서, 내가 해왔던 .ipynb
방식으로 코딩을 하는 것은 매우 자연스러운 일이라는 것.
🟡 왜 깃허브에서는 .py
를 선호할까?
핵심은 재사용성(Reusability)과 재현성(Reproducibility)이다. .py
를 모듈화 라고 배웠는데 이것은 코드의 재사용성을 높이고 유지 보수를 쉽게 한다. 즉, 깃허브에서 협업을 하기 위해서는 이러한 재사용성은 필수이기 떄문이다.
🟡 .ipynb
vs .py
in Deep Learning
항목 | .ipynb (Jupyter) | .py (Script) |
---|---|---|
목적 | 실험, 시각화, 튜토리얼 | 재현성, 자동화, 배포 |
실행 방식 | 셀 단위 실행 | 전체 순차 실행 |
Git 관리 | diff 보기 어려움 | 텍스트 기반, Git 친화적 |
재사용 | 낮음 | 높음 |
시각화 | 즉시 확인 가능 | 별도 코드 필요 |
💡 실험은
.ipynb
→ 코드화는.py
로 리팩토링하는 습관을 들이면
협업, 논문 리뷰어, 공개 재현 모두에게 신뢰를 주게 된다.
This post is licensed under CC BY 4.0 by the author.