코랩을 안 쓰고 vscode에서 .ipynb 파일을 돌리려면 커널을 선택해야 한다.

본격적으로 설명하기 전에 새삼스럽게 각각에 대해 정의를 풀자면,,
ipynb는 Interactive Python Notebook의 약자다. 주피터 노트북(Jupyter Notebook) 파일 형식인데, 일반적인 파이썬 파일(.py)과 다른 게 뭐냐면, 파이썬 파일은 코드만 들어있지만 주피터 노트북은 코드, 실행 결과, 설명 등이 하나의 문서 안에 모두 포함된 형태다. 그래서 공부할 때 아주 많이 사용된다.
이건 비영리 단체인 Project Jupyter에서 개발했다. Jupyter라는 이름도 Julia, Python, R을 합쳐서 만든 건데 이 세 언어를 지원하기 때문이다. (파이썬 전용이 아님!)

그리고 커널(Kernel)은 소프트웨어가 내린 명령이 실제 하드웨어가 돌아가면서 연산이 될 수 있도록 중간에서 통제하는 역할을 한다. 그러니 운영체제의 핵심이라고 할 수 있다.
그나저나 보통 .ipynb를 돌릴 때는 특별히 커널을 선택해야 한다. 왜 그럴까?

먼저 파이썬 파일을 보자면, 이거도 돌리려면 어쨌든 어떤 파이썬으로 돌릴지 선택하긴 해야 한다. 하지만 파일 전체를 한 번에 실행하고(샐힝 시점에 인터프리터를 지정) 실행이 끝나면 메모리가 초기화된다.
반면에 주피터 노트북 파일은 셀 단위로 끊어서 실행하고, 실행 후에도 커널이 메모리에 계속 상주하면서 변수 등을 기억해야 한다. 코드 실행 환경에 대한 제어권이 유저에게 더 강력하게 부여되어 있다는 뜻이다! 애초에 커널마다 깔린 도구들이 다르기 때문이기도 하다.
위의 사진에서 첫 번째 "Python Environments..."는 내 컴퓨터에 설치된 파이썬 환경들을 보여준다. VS Code가 직접 가져와서 이것저것 실행한다. 두 번째 "Existing Jupyter Server..."는 내 컴퓨터가 스스로 서버가 되어서 돌아갈 환경을 별도로 띄워놓고 접속할 수 있다. 어차피 localhost로 접속하게 돼서 코랩이랑은 다르다. VS Code든 뭐든 여기에 한꺼번에 접속할 수 있다. 세 번째 "Colab"은 그냥 구글 거 쓰는 거다.
암튼 첫 번째를 누르면 뭐 이것저것 뜨게 되는데,

나는 정리를 안 해서 그런가 엄청 더럽다.
가운데 줄이 있고 크게 위와 아래로 나뉜다.
윗 부분은 Conda Env라고 쓰여있는데 이건 아나콘다를 써서 내가 직접 만든 가상환경이다. 반면 아래는 Global Env라고 쓰여있는데 컴퓨터 전체에 기본적으로 깔려 있는 파이썬이다. 그러니 아래 있는 Global Env 저 세 녀석은 사용하지도 말고 지우지도 말자. 내가 아니라 운영체제가 쓰기 위한 용도다.
가상환경을 만들 때 아나콘다를 안 쓰고 직접 만들어도 된다 "python -m venv 어쩌구저쩌구" 뭐 이렇게 만들면 된다. 그러면 가상환경이 현재 내가 작업 중인 프로젝트 폴더 안에 생긴다.
그치만 아나콘다를 쓰면 가상환경을 만들 때 훨씬 편하다.
우선, 파이썬 버전을 마음대로 설정할 수 있다. 그리고 라이브러리 이것저것 설치하기 전에 같이 깔았을 때 충돌이 일어나지는 않는지 검사해준다. 게다가 venv는 파이썬 패키지만 관리하지만 아나콘다는 파이썬은 물론 C++ 라이브러리나 CUDA 같은 시스템 레벨의 도구들도 같이 관리할 수 있다.
여기도 base가 있는데 얘는 알다시피 폴더 자체도 다른 것들은 envs/ 안에 들어있는데 쟤만 bin/에 들어있다. 작업용으로 쓰지 말자. 그냥 아나콘다 시스템 자체가 돌아가기 위한 기본 뿌리다.
나머지 것들은 이제 안 써서 다 지웠다. 깔끔해짐!

'이분 전산학부 졸업한 거 아닌가요? > 기타' 카테고리의 다른 글
| 프레임워크/라이브러리/패키지/모듈 차이 (0) | 2025.12.30 |
|---|---|
| [o1-preview] OpenAI가 또 새로운 서비스를 내놓았다!!! - (3) 새로운 시리즈 o1 (0) | 2024.09.19 |
| [o1-preview] OpenAI가 또 새로운 서비스를 내놓았다!!! - (2) GPT-4o까지의 변화 (0) | 2024.09.17 |
| [o1-preview] OpenAI가 또 새로운 서비스를 내놓았다!!! - (1) GPT 자체에 대해 알아보는 시간 (12) | 2024.09.17 |
| cmd에서 언제 슬래시(/)를 쓰고 언제 백슬래시(\)를 쓸까? (0) | 2024.07.01 |
한국은행 들어갈 때까지만 합니다