Python ๊ฐœ๋ฐœ ํ™˜๊ฒฝ, ํ”„๋กœ๊ทธ๋žจ ์„ค์น˜์™€ ๋น„๊ต(1) - Jupyter

๋ฐ˜์‘ํ˜•

13๋…„๋„์— ์ œ๊ฐ€ ํ•™๋ถ€ ์ˆ˜์—…์—์„œ Python์„ ์›์–ด ์ˆ˜์—…์œผ๋กœ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๋•Œ๋งŒํ•ด๋„ ๊ต์žฌ๊ฐ€ ๊ฑฐ์˜ ๋„คํŠธ์›Œํฌ ๊ต์žฌ ์ˆ˜์ค€์œผ๋กœ ๋‘๊บผ์› ์—ˆ๋Š”๋ฐ ์ˆ˜ํ•™์ ์ธ ๋‚ด์šฉ๋„ ๋งŽ์•˜๊ณ , ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ํ•˜๋Š” ๋“ฑ์˜ ๋‚ด์šฉ๋„ ๋งŽ์ด ์žˆ์—ˆ์ง€๋งŒ ํฌ๊ฒŒ ๊ด€์‹ฌ์„ ๊ฐ–์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.


๊ทธ๋Ÿฌ๋‹ค๊ฐ€ ์ตœ๊ทผ์— Machine Learning์„ ๊ณต๋ถ€ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด์„œ ๋‹ค์‹œ Python์„ ์ ‘ํ•™๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ์š”. ์˜ˆ์ „์—๋„ ๊ทธ๋ ‡์ง€๋งŒ ์ง€๊ธˆ์€ ๋” ๋œจ๊ฑฐ์šด ์–ธ์–ด๊ฐ€ Python์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.. ์–ด๋Š ์ปจํผ๋Ÿฐ์Šค๋‚˜ ๋ฐœํ‘œ๋ฅผ ๊ฐ€๋„ Tensorflow ๋‚ด์ง€ Django์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๊ฐ€ ๊ต‰์žฅํžˆ ๋งŽ๋”๊ตฐ์š”.


๊ทธ๋ž˜์„œ ์ด๋ฒˆ ํฌ์ŠคํŠธ์—์„œ๋Š” Python ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํฌ์ŠคํŒ…์„ ํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.



Python ์„ค์น˜์™€ ์‹คํ–‰

Python์€ Linux, Mac OS X, Windows ์–ด๋””์„œ๋“ ์ง€ ์ด์šฉ์ด ๊ฐ€๋Šฅํ•œ ์ž์œ ๋กœ์šด ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์ €๋Š” Linux๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— Linux์—์„œ Python์„ ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ž์„ธํžˆ ๋‹ค๋ฃจ๋„๋ก ํ•˜๊ณ  Windows์— ๋Œ€ํ•œ ๋ถ€๋ถ„๋„ ๊ฐ„๋‹จํ•œ ๋ถ€๋ถ„๋งŒ ๋‹ค๋ค„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


Download Python


Windows์šฉ Python ์„ค์น˜

Windows์˜ ๊ฒฝ์šฐ, ์œ„์— Download Python ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์ž๋™์œผ๋กœ Windows์šฉ Python ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€๊ฐ€ ํ‘œ์‹œ๋˜๋ฉฐ ์ž์‹ ์ด ์›ํ•˜๋Š” ๋ฒ„์ „์œผ๋กœ ์„ค์น˜ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ 3.x ๋ฒ„์ „์„ ์ถ”์ฒœํ•˜์ง€๋งŒ, ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ์‚ฌ์šฉํ•˜๋Š” ๊ต์žฌ ๋“ฑ์ด 2.x๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด 2.7 ๋ฒ„์ „์„ ์„ค์น˜ํ•˜์…”์•ผ ํ•ฉ๋‹ˆ๋‹ค.


Windows์šฉ Python์€ ์„ค์น˜ ํ›„, ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค. 


์‹œ์Šคํ…œ ์†์„ฑ์—์„œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.



์‚ฌ์šฉ์ž ๋ณ€์ˆ˜ ์ชฝ์— path ๋ณ€์ˆ˜ ๋ฒ„ํŠผ์„ ํด๋ฆญ ํ›„, ๋ณ€๊ฒฝ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.


Python ์„ค์น˜ ๊ฒฝ๋กœ๋ฅผ ์ž…๋ ฅ ํ›„, ํ™•์ธ์„ ํด๋ฆญํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.



Linux์šฉ Python ์„ค์น˜

Linux์—์„œ๋Š” Python ํ™ˆํŽ˜์ด์ง€์—์„œ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ๊ฐ Linux ๋ฐฐํฌํŒ๋ณ„๋กœ ๋นŒ๋“œ ๊ณผ์ •์„ ๊ฑฐ์ณ์„œ ์„ค์น˜ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณต์žกํ•œ ๊ณผ์ •์„ ์š”๊ตฌํ•˜๋ฏ€๋กœ ๋ณดํ†ต์€ ํ™ˆํŽ˜์ด์ง€์—์„œ ์„ค์น˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Linux์—์„œ๋Š” OS X์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฏธ๋ฆฌ ๋นŒ๋“œํ•œ ๋ฐ”์ด๋„ˆ๋ฆฌ ์„ค์น˜ ํŒŒ์ผ ์ €์žฅ์†Œ์ธ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ๋ฅผ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.


Ubuntu Linux์—์„œ ์„ค์น˜ํ•˜์‹ ๋‹ค๋ฉด ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ , ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. (ํ„ฐ๋ฏธ๋„ ๋‹จ์ถ•ํ‚ค๋Š” Ctrl + Alt + T ์ž…๋‹ˆ๋‹ค.)


$ sudo apt install python

๋งŒ์•ฝ 2.x ๋ฒ„์ „์ด ์•„๋‹Œ 3.x ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ์•„๋ž˜ ๋ช…๋ น์–ด์ฒ˜๋Ÿผ 3๋งŒ ๋ถ™์ด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.


$ sudo apt install python3

python3 ์ปค๋งจ๋“œ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ตœ์‹  ๋ฒ„์ „์˜ Python์ด ์„ค์น˜๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ํ˜น์‹œ๋ผ๋„ 3.x์˜ ๋‹ค๋ฅธ ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด python3.4 ๋“ฑ ์›ํ•˜๋Š” ์ˆซ์ž๋ฅผ ๋„ฃ์œผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.


RedHat Linux(CentOS)์—์„œ Python์„ ์„ค์น˜ํ•˜์‹œ๋Š” ๊ฒฝ์šฐ๋„ ๋ ˆํฌ์ง€ํ„ฐ๋ฆฌ ์ ‘๊ทผ ๋ช…๋ น์–ด๋งŒ ๋‹ฌ๋ฆฌ ์ฃผ๊ณ , ๋‚˜๋จธ์ง€๋Š” ๋˜‘๊ฐ™์ด ์ ์–ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.


$ sudo yum install python

์Œ ๋‚˜๋จธ์ง€๋Š” Ubuntu๋ž‘ ๋˜‘๊ฐ™๊ณ  ์›ฌ๋งŒํ•ด์„  ๋Œ€๋ถ€๋ถ„์ด Ubuntu Linux๋ฅผ ์‚ฌ์šฉํ•  ๊ฑฐ๋ผ ์ƒ๊ฐํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ๊นŒ์ง€๋งŒ ์ ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


Python ์„ค์น˜๊ฐ€ ๋๋‚ฌ์œผ๋ฉด ์ด์ œ ํ•œ ๋ฒˆ ์‹คํ–‰ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํ„ฐ๋ฏธ๋„/๋ช…๋ น ํ”„๋กฌํฌํŠธ๋ฅผ ์ด์šฉํ•˜์—ฌ Python์ด๋ผ๋Š” ๋ช…๋ น์–ด๋ฅผ ์น˜๋ฉด...



Python Console์ด ๋œจ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์ฝ”๋”ฉ ํ•˜๋‚˜๋ฅผ ํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.



๊ทธ๋ž˜ํ”„๋ฅผ ๊ทธ๋ฆฌ๋Š” ์ฝ”๋”ฉ์„ ํ•ด๋ดค์Šต๋‹ˆ๋‹ค. ๋งค์šฐ ๊น”๋”ํ•˜๊ฒŒ ์ž˜๋˜๋„ค์š” +_+



Python ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋žจ

์ œ๊ฐ€ ์ฒ˜์Œ ํ•™๋ถ€ ์ˆ˜์—… ํ–‡์„ ๋•Œ ์ผ๋˜ Python ๊ฐœ๋ฐœ ๋„๊ตฌ๋Š” Eclipse + PyDev๋ฅผ ์‚ฌ์šฉํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋‹จ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ฝ”๋“œ๋ฅผ ์งœ๊ธฐ๋„ ํŽธํ–ˆ๊ณ , ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋žจ์„ ์—ฌ๋Ÿฌ ๊ฐœ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ๋ณด๋‹จ Eclipse๋ฅผ Java ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ๊ฒธ Python๋„ ๊ทธ๋ ‡๊ฒŒ ๋ผ์›Œ ์„ค์น˜ํ•œ ๊ฒƒ ๋ฟ์ด์—ˆ์ฃ  (๋ฌด์—‡๋ณด๋‹ค ๊ทธ ๋•Œ ๊ฐ€์ง€๊ณ  ์žˆ์—ˆ๋˜ ๋…ธํŠธ๋ถ์ด ๋ณ„๋กœ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ์•Š์•˜๋‹ค๋Š” ๊ฒƒ์ด ํ•จ์ •....)


๊ทธ ์™ธ์—๋„ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    • Jupyter(iPython)
    • Jetbrains PyCharm
    • Sublime Text, Atom editor
์ €๋Š” ์ง€๊ธˆ Jupyter๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ์ด ๋†ˆ ์ƒ๊ฐ๋ณด๋‹ค ๋ฌผ๊ฑด์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ์‹ค ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ๋Š” ๋‹ค๋ฅธ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์—ฐ์Šต์šฉ์ด๋‚˜ CodeLab ๋“ฑ์œผ๋กœ ํ™œ์šฉํ•˜๊ธฐ์—๋Š” ๋” ์—†์ด ์ข‹๊ณ  ํŠนํžˆ ์ด์ œ ๋ง‰ ๊ณต๋ถ€๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๋Š” ๋ถ„๋“ค์ด๋‚˜ ์ฒ˜์Œ ํ•˜์‹œ๋Š” ๋ถ„๋“ค์—๊ฒŒ ์ถ”์ฒœํ•ด๋ณด๋Š” ํˆด์ž…๋‹ˆ๋‹ค.

jupyter ์„ค์น˜/์‹คํ–‰ (Windows, Linux)

jupyter๋Š” iPython์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์ œ๊ณต๋˜์—ˆ๋˜ Python ๊ฐœ๋ฐœ ๋„๊ตฌ ์ค‘์— ํ•˜๋‚˜๋กœ, notebook ํ˜•ํƒœ๋กœ ์ œ๊ณตํ•˜์—ฌ ์ฝ”๋”๊ฐ€ ์ง  ์ฝ”๋“œ๋ฅผ ๊น”๋”ํ•˜๊ฒŒ ์ •๋ฆฌํ•ด์„œ ๋ณด์—ฌ์ค€๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋งˆํฌ์—… ์–ธ์–ด๋ฅผ ์ง€์›ํ•จ์— ์žˆ์–ด์„œ ๊ต‰์žฅํžˆ ๋งค๋ ฅ์ ์ž…๋‹ˆ๋‹ค. (๊ฒŒ๋‹ค๊ฐ€ ๋‹ค๋ฅธ ์–ธ์–ด๋„ ์ง€์›ํ•จ +_+)


jupyter๋ฅผ ์„ค์น˜ํ•˜์‹œ๊ธฐ ์ „์—, ์—ฌ๋Ÿฌ๋ถ„์ด ์ž‘์—…ํ•  ๊ณต๊ฐ„์„ cd ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•ด ์ด๋™ํ•˜์‹  ํ›„ ์„ค์น˜ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.


$ pip install --upgrade jupyter

Python 2.x์—์„œ๋Š” ์œ„ ๋ช…๋ น์–ด๋ฅผ, Python 3.x์—์„œ๋Š” ์•„๋ž˜์˜ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. (Windows์™€ Linux ๋ชจ๋‘ ๋˜‘๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.)


$ pip3 install --upgrade jupyter

์ด์ œ ์„ค์น˜๊ฐ€ ๋๋‚ฌ์œผ๋‹ˆ ์‹คํ–‰์„ ํ•œ ๋ฒˆ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.


$ jupyter notebook

๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ์นœ์ ˆํ•˜๊ฒŒ ๋ฐ”๋กœ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋„์›Œ์ค๋‹ˆ๋‹ค..


๊ธฐ๋ณธ 8888๋ฒˆ ํฌํŠธ๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ์ž์‹ ์ด ์›ํ•˜๋Š” ๊ณต๊ฐ„์— ์„ค์น˜๋˜๊ธฐ ๋•Œ๋ฌธ์—, New ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด์„œ Python3 ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ์ฃผ์‹œ๋ฉด ์ƒˆ๋กœ์šด Python ์ฝ”๋“œ ์ƒ์„ฑ ๊ณต๊ฐ„์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.


Python 2.7 ๋ฒ„์ „์„ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ, Python 2๊ฐ€ ๋œฐ๊ฒƒ์ž…๋‹ˆ๋‹ค. 




In ๋ถ€๋ถ„์—๋Š” ์ฝ”๋“œ๊ฐ€ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค. ์ฒ˜์Œ ์‹คํ–‰์„ ํ•˜์‹œ๊ฒŒ ๋˜๋ฉด, In[]: ์ด๋ผ๋Š” ๋นˆ์นธ์ด ์ƒ์„ฑ๋˜๋Š”๋ฐ, ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ํ•˜๊ณ ์‹ถ์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์‹œ๋ฉด ๋˜๊ณ , ๊ทธ ๋ฐ‘์—๋Š” ์™ผ์ชฝ ์œ„์— ์žˆ๋Š” + ๋ฒ„ํŠผ์„ ์‚ฌ์šฉํ•˜์…”์„œ ์ƒˆ๋กœ์ด ์ถ”๊ฐ€ํ•œ ํ›„, CellToolBar ์™ผ์ชฝ์— ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ๋ฐ•์Šค์—์„œ Markdown์œผ๋กœ ๋ฐ”๊พธ๋ฉด ์ผ๋ฐ˜ ํ…์ŠคํŠธ ๋ฌธ์ž๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


๋งˆ์šฐ์Šค๋กœ ํด๋ฆญํ•˜๊ธฐ ๊ท€์ฐฎ๋‹ค๋ฉด, ๋‹จ์ถ•ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์…”๋„ ๋˜๋Š”๋ฐ, ๋‹จ์ถ•ํ‚ค์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ [Help] - [Keyboard Shortcuts]๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.



๋‹จ์ถ•ํ‚ค๋Š” ๋งŽ์ด ์กด์žฌํ•˜์ง€๋งŒ, ์—ฌ๊ธฐ์„œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋‹จ์ถ•ํ‚ค๋Š” Checkpoint ์ƒ์„ฑ๊ณผ ์ €์žฅ์„ ํ•˜๋Š” Ctrl - S์™€ ์•„๋ž˜ ์นธ์— ์ƒˆ๋กœ์šด ํ–‰์„ ์ƒ์„ฑํ•˜๋Š” b ๋‹จ์ถ”ํ‚ค, ํ–‰์„ ์‚ญ์ œํ•˜๋Š” d + d ๋‹จ์ถ•ํ‚ค ์ •๋„๋งŒ ์‚ฌ์šฉํ•˜๋ฉด ๊ต‰์žฅํžˆ ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.


๋‹ค์Œ ํฌ์ŠคํŠธ์—์„œ๋Š” Sublime Text 3๋ฅผ ์‚ฌ์šฉํ•œ Python ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์ถ•์— ๋Œ€ํ•ด ํฌ์ŠคํŒ…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•
TAGS.

Tistory Comments