파이참 파일 확장자 타입 변경하기

파이참에서 파일을 만들다보면 확장자명을 지정하지 않고 파일을 만드면서 text 형식으로 지정하는 경우가 있다.
보통의 경우 auto-detected이지만, 잘못 지정하면 확장자를 바꿔도 기존에 지정한 형식으로 읽어온다.
이 경우 지정한 형식을 제거해주면 된다.

Setting - File Types

파이참 가상환경 생성

가상환경

라이브러리를 불러오다보면 의존성 패키지의 과거 버전이 필요할 때가 있다.
모든 패키지에 대응할 수는 없으니 파이썬이나 해당 패키지를 재설치 혹은 Downgrade를 진행해야 할 것이다.
위 문제를 해결할 수 있는 방법이 여러 파이썬을 생성해 각각 환경에 맞는 패키지를 설치해 따로 불러오는 방법으로 가상환경이라 한다.

가상환경 생성

설정에서 생성하기

프로젝트를 생성하고 코드 작업을 진행하다 버전 에러가 났을 때,

Files - Settings - Project:

- Python Interpreter 에서 Add... 를 눌러 추가할 수 있다.

가장 기본적인 Venv를 설치할 수 있다. anaconda 설치가 됐다면 conda 환경도 추가할 수 있지만, 기본적인 파이썬 Venv 설치를 진행할 예정.
파이썬 exe 경로와 가상환경 dir 경로를 잘 확인해주자

프로젝트와 같이 생성하기

보통의 경우는 파이참에서 프로젝트를 생성하며 가상환경 설치를 진행할 것이다.

터미널에서 생성하기

파이참같은 개발환경을 사용하지 못하고 리눅스 등 환경의 터미널에서 생성해야할 경우는 venv — 가상 환경 생성를 참조한다.

패키지 설치

파이썬 가상환경을 생성했다면 사용할 패키지를 설치하면 된다.

정상적으로 설치했다면 문제 없겠지만 어느 파이썬을 참조하고 있는지 터미널에서 확인해보자.

1
2
3
4
 # window
$ where python
# mac, linux .ect
$ which python

가상환경을 참조하지 못하고 있다면 아래 명령어로 (venv) 강제 진입해보자.

1
2
3
4
 # window
$ source ./venv/Scripts/activate
# mac, linux .ect
$ source ./venv/bin/activate

설정 interpreter에서

파이참 같은 경우엔 Python Interpreter - install 버튼을 선택해 설치할 패키지와 버전을 선택할 수 있다.

requirements.txt

버전을 일일히 기억하고 있기도 뭐하고 설치할 패키지가 많다면 하나하나 설치하는 것도 일이다.

pycaret같은 패키지를 보면 requirements.txt로 관리한다.

텍스트 파일에 원하는 패키지와 버전을 입력했다면 pip 명령어로 한번에 설치를 진행할 수 있다.

1
$ pip install -r requirements.txt

Jupyter ipynb에서 가상환경 사용

가상환경 이름과 표시될 이름을 설정해준다.

난 각각

과 <파이썬버전(dir 이름)>으로 설정했다.

1
ipython kernel install --user --name python_ml --display-name "Python3(python_ml)"

정상적으로 등록됐다면 jupyter 환경으로 접속하면 된다.

1
2
$ jupyter lab
$ jupyter notebook

주피터 랩을 추천한다.

외부링크

파이참, 파이썬 인코딩 설정

어떤 작업환경을 사용하든 가능하다면 UTF-8 포멧으로 작업하는걸 추천한다.

pycharm에서도 인코딩 방식 변경을 지원함.

file - setting - editor - file encodings에서 Global Encoding이 UTF-8이 아니라면 변경해주자.

프로젝트 인코딩과 속성 파일 인코딩 방식은 OS가 윈도우라면 새 프로젝트를 열 때 마다 기본값으로 돌아갈 것이다.
필요한 설정이 아니라면 크게 신경쓰진 말자.

encoding

※ 코드 파일 맨 윗단에 아래 주석을 추가하면 자동 UTF-8 인코딩 해준다.

1
# -*- coding: utf-8 -*-

pycharm에서 UTF-8로 변경했고 python 3++를 사용중이기에 추가할 필요는 없지만 작업 파일을 공유하거나 먼 미래에 열어볼 나를 위해 추가한다.

Jupyter ModuleNotFound 에러 (feat.plotly)

0. 모듈 에러 확인

Plotly를 외부 컴퓨터에서 잘 사용하다가 집에서 모듈을 설치하기 위해 plotly에서 안내된 install 명령어 대로 설치하고 jupyter로 사용하려니 아래와 같이

1
ModuleNotFoundError: No module named 'plotly'

오류를 뱉어내더라.

cmd에서 plotly를 확인해도 깔려 있는데, 막상 로컬 소프트인 jupyter에서 사용하려니 경로를 못 찾아가는 느낌이라 주피터 path 경로 문제인가 했었다.

구글링해서 내린 결론은 일반 cmd로 모듈을 다운받으면 python에 대한 모듈로 다운받는게 문제였다.

“jupyter는 파이썬 아니냐?”
하겠지만 jupyter에서 import로 참조되는 모듈들은 Anaconda 설치 경로에서 참조되기 때문에 python에 모듈을 설치하는 경우는 아무 의미 없는 작업이된다.

1. Anaconda Prompt

결국 로컬 jupyter에서 외부 모듈을 적용시키기 위해선 anaconda 경로로 설치할 필요가 있고, 많은 방법 중 하나가 Anaconda Prompt다.

아나콘다 경로 혹은 시작화면 앱 찾기에서 Anaconda Prompt를 실행하고

2. plotly 설치

Plotly 설치를 Anaconda prompt에서 진행한다.

1
> pip install plotly==5.3.1

3. Jupyter 모듈 오류 해결

anaconda 로컬 소프트인 jupyter notebook에서 정상적으로 import되는 걸 확인할 수 있다.

그렇다면 구글, 당신이 신이란거야?

Jupyter 경로 변경

주피터 노트북 혹은 주피터 랩의 기본 경로가 Users에 적용되어있고 간단한 설정으로 경로를 바꿀 수 없기에 메모를 남긴다.

주피터 설정을 변경하기 위해서는 구성을 변경할 수 있는 파일인 config 파일이 필요하다.
하지만 이 congif 파일은 기본적으로 설치되어있지 않기에 아래와 같이 cmd 창에서 jupyter 명령어로 세팅 방식이 적힌 config 파일을 생성해주는걸 권장한다.

1
> jupyter notebook --generate-config

config 생성

그러면 user 경로 .jupyter 디렉토리에 jupyter_notebook_config.py 파일이 생성된다.

jupyter_notebook_config.py

버전마다 다르지만 에디터를 이용해 385번줄에 있는

1
# c.NotebookApp.notebook_dir = ''

c.NotebookApp.notebook_dir

의 주석 처리를 제거하고 원하는 경로를 입력한다.

이 때, 경로는 리눅스 방식으로 변경해야되니 역슬래쉬(\)로 경로가 복사되었다면 슬래쉬(/)로 변경하거나 컴퓨터에게 특수문자임을 인식시키기 위해 역슬래쉬를 2번(\\) 입력한다.

1
c.NotebookApp.notebook_dir = 'E:/Fear/Univ/Big_data/Training/Github/Codding-base/Python/Python-jupyter'

혹은
1
c.NotebookApp.notebook_dir = 'E:\\Fear\\Univ\\Big_data\\Training\\Github\\Codding-base\\Python\\Python-jupyter'

경로 입력

이걸로 주피터 path 경로는 변경되었으나 Jupyter Notebook의 바로가기 path도 설정해야 notebook을 열었을 때 config에서 설정한 path 경로를 참조할 수 있다.
Jupyter Notebook 경로

notebook 설정을 열어서 아래 두 경로를 지워 config 설정을 참조하도록 바꿔준다.

1
2
대상: ~ "%USERPROFILE%/"
시작위치: %HOMEPATH%

path 변경

지정한 경로에서 잘 열리지만 path 내부에서만 작업하므로 작업환경에서 가장 편한 path를 설정하는걸 권장한다.

외부링크

ipynb 사용하기; Jupyter & Google Colab

IPython Notebook은 python 코딩과 html을 지원하고 수식까지 표현 가능한 markdown 텍스트 박스를 동시에 사용해 가독성을 올리기 위해 제안된 방식이다.

Jupyter

기본적으로 로컬환경에서 사용가능한 Jupyter 시리즈가 있다.
아나콘다
주피터는 아나콘다를 설치하면 따라오는 소프트웨어로 아나콘다 설치 방법 포스트를 참조하자.

ipynb 단축키는 커멘트 팔렛트에서 확인 및 수정할 수 있다.

자주 사용되는 단축키는

  • ctrl+m & m
  • d & d
  • tab
    등 다양하게 있으니 기호에 맞춰 설정하자.

Google Colab

온라인 환경에선 다양한 플렛폼이 ipynb 환경을 지원하지만 접근성이 좋고 작업 리소스까지 지원해주며 저장공간 연동까지 가능한 Google Colab이 대표적이다.
Google 플렛폼이므로 당연히 google drive 연동을 지원하고, Github 업로드도 가능하다.

유저 작업환경 사양이 좋지않다면 Colab에서 지원하는 하드웨어 가속기를 사용해서 저사양 GPU(혹은 TPU)를 대여할 수 있다.

수정 - 노트 설정

추가로 ipynb는 ‘Kaggle Notebook’ 등 다양한 플랫폼에서 작업 가능하다.