2023. 8. 29. 13:39ใETC/Programming
๊ฐ์ ํ๊ฒฝ์ด๋?
๊ฐ์ ํ๊ฒฝ์ ํ์ด์ฌ ์ธํฐํ๋ฆฌํฐ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ์คํฌ๋ฆฝํธ๊ฐ ๋ค๋ฅธ ๊ฐ์ ํ๊ฒฝ์ ์ค์น๋ ๊ฒ๊ณผ (๊ธฐ๋ณธ์ ์ผ๋ก) “์์คํ ” ํ์ด์ฌ(๊ธฐ์กด ์ด์ ์ฒด์ ์ผ๋ถ๋ก ์ค์น๋์ด์๋ ๊ฒ)์ ์ค์น๋ ๋ชจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ฒฉ๋ฆฌ๋์ด์๋ ํ์ด์ฌ ํ๊ฒฝ.
ํ์ด์ฌ ์คํ ํ์ผ๊ณผ ๊ฐ์ ํ๊ฒฝ์์ ๋ํ๋ด๋ ๋ค๋ฅธ ํ์ผ์ ํฌํจํ๋ ๋๋ ํฐ๋ฆฌ ํธ๋ฆฌ.
๊ฐ์ํ๊ฒฝ์ ์ฌ์ฉํด์ผ ํ๋ ์ด์ ?
ํ์ด์ฌ ํน์ฑ
- ๊ฐ๋ฐ ์ฃผ๊ธฐ๊ฐ ๋น ๋ฆ.
- ๋ค์ํ ํจํค์ง๋ฅผ ์ด์ํ๋๋ฐ, ํจํค์ง ๋ฒ์ ์ ๋ฐ๋ผ ํธํ์ด ์๋๋ ๊ฒฝ์ฐ๊ฐ ๋ฐ์.
๊ฐ์ ํ๊ฒฝ์ ์ข ์์ฑ ๊ด๋ฆฌ ๋ฐ ๋ถ๋ฆฌ, ์์คํ ๊ด๋ฆฌ์ ์ก์ธ์ค ์์ด Python ํจํค์ง ์ค์น ๋ฐ ์ฌ์ฉ์ ์ฉ์ด์ฑ, ์ฌ๋ฌ Python ๋ฒ์ ์ ๊ฑธ์น Python ์ํํธ์จ์ด์ ์๋ ํ ์คํธ ๋ฑ์ ์ด๋ฏธ ๋๋ฆฌ ์ฌ์ฉ๋๊ณ ์๋ค. ์์คํ ๋ ๋ฒจ์ site-package ๋๋ ํ ๋ฆฌ๋ก๋ถํฐ ์์ ํ ๋ ๋ฆฝ๋์ด ์๋ค.
๐ https://thrillfighter.tistory.com/387
๐ https://www.daleseo.com/python-venv/
venv ๋ชจ๋
ํ์ด์ฌ 3.3 ๋ถํฐ๋ venv ๋ชจ๋์ด ๋ด์ฅ๋๊ธฐ ๋๋ฌธ์ ๋ณ๋ ํจํค์ง ์ค์น์์ด ํ์ด์ฌ๋ง ์ค์น๋์ด ์์ผ๋ฉด ๋ฐ๋ก ๊ฐ์ ํ๊ฒฝ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๋ค.
์์ฒด ์ฌ์ดํธ ๋๋ ํฐ๋ฆฌ๋ฅผ ๊ฐ๋ ๊ฒฝ๋ ๊ฐ์ ํ๊ฒฝ์ ๋ง๋๋ก, ์ ํ์ ์ผ๋ก ์์คํ ์ฌ์ดํธ ๋๋ ํฐ๋ฆฌ์์ ๊ฒฉ๋ฆฌํ ์ ์๋๋ก ์ง์. ๊ฐ ๊ฐ์ ํ๊ฒฝ์ ๊ณ ์ ํ ํ์ด์ฌ ๋ฐ์ด๋๋ฆฌ(์ด ํ๊ฒฝ์ ๋ง๋๋ ๋ฐ ์ฌ์ฉ๋ ๋ฐ์ด๋๋ฆฌ ๋ฒ์ ๊ณผ ์ผ์น)๋ฅผ ๊ฐ์ง๋ฉฐ ์์ ์ ์ฌ์ดํธ ๋๋ ํฐ๋ฆฌ์ ๋ ๋ฆฝ์ ์ผ๋ก ์ค์น๋ ํ์ด์ฌ ํจํค์ง ์งํฉ์ ๊ฐ์ง ์ ์์.
# Create Virtual Environment
python3 -m venv /path/to/new/virtual/environment
๊ฐ์ ํ๊ฒฝ ํ์ฑํ
์ผ๋จ ๊ฐ์ ํ๊ฒฝ์ด ๋ง๋ค์ด์ง๋ฉด, ๊ฐ์ ํ๊ฒฝ์ ๋ฐ์ด๋๋ฆฌ ๋๋ ํฐ๋ฆฌ์ ์๋ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ “ํ์ฑํ”ํ ์ ์๋ค. ํ๊ฒฝ์ ๊ตฌ์ฒด์ ์ผ๋ก ํ์ฑํํ ํ์๋ ์๋ค. ํ์ฑํ๋ ๋จ์ง PATH์ ์ฒ์์ ๊ฐ์ ํ๊ฒฝ์ ๋ฐ์ด๋๋ฆฌ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ถ๊ฐํด์ python์ด ๊ฐ์ ํ๊ฒฝ์ ํ์ด์ฌ ์ธํฐํ๋ฆฌํฐ๋ฅผ ํธ์ถํ๊ณ ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ๋ ์ค์น๋ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ ์ ์๋๋ก ํ๋ค. ๊ทธ๋ฌ๋, ๊ฐ์ ํ๊ฒฝ์ ์ค์น๋ ๋ชจ๋ ์คํฌ๋ฆฝํธ๋ ํ์ฑํํ์ง ์๊ณ ๋ ์คํ ๊ฐ๋ฅํด์ผ ํ๋ฉฐ, ์๋์ผ๋ก ๊ฐ์ ํ๊ฒฝ์ ํ์ด์ฌ์ ์ฌ์ฉํ์ฌ ์คํํด์ผ ํ๋ค.
๐ก ๊ฐ์ ํ๊ฒฝ์ด ํ์ฑ ์ํ = ๊ฐ์ ํ๊ฒฝ์ ํ์ด์ฌ ์ธํฐํ๋ฆฌํฐ๊ฐ ์คํ ์ค์ผ ๋.
- ํ์ฑํ
# bash/zsh ์
ธ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ
source <venv>/bin/activate
- ๋นํ์ฑํ
deactivate
'ETC > Programming' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Node.js] Nodejs์์ Discord Webhook์ผ๋ก ๋ฉ์์ง ๋ฐ์กํ๊ธฐ (0) | 2024.02.11 |
---|---|
[React] React Hook API (1) (0) | 2020.06.14 |
[ReactJS] Hook ๊ฐ๋ ์์๋ณด๊ธฐ (4) | 2020.06.03 |