{ "metadata": { "name": "", "signature": "sha256:88e3e4713a4a9e75f303a0292f75fe1795c9e7da4a6448bdd9e34cb422279f02" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "

\ucd94\ucc9c \uc0ac\uc774\ud2b8

\n", "\n", "\ud30c\uc774\uc36c \uae30\ucd08 \ubb38\ubc95 \uc18c\uac1c\n", "\n", "[\uc810\ud504 \ud22c \ud30c\uc774\uc36c](https://wikidocs.net/book/1)\n", "\n", "[\ud30c\uc774\uc36c \ubc30\uc6b0\ub294 \ucd5c\uace0\uc758 \ubc29\ubc95](http://nolboo.github.io/blog/2014/08/10/the-best-way-to-\n", "learn-python/)\n", "\n", "[Python Tips, Tricks, and Hacks](http://www.siafoo.net/article/52)\n", "\n", "[python | learn x in y minutes](http://learnxinyminutes.com/docs/ko-kr/python-kr/)\n", "\n", "--- \n", "\n", "ipython \uc0ac\uc6a9\ubc95 \uad00\ub828 \ubc14\uc774\uc624\uc2a4\ud540 \uacfc\uac70 \ubc1c\ud45c\uc790\ub8cc \n", "\n", "[http://nbviewer.ipython.org/gist/irobii/014b8aa3574090a0d04a](http://nbviewer.ipython.org/gist/irobii/014b8aa3574090a0d04a)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "

\ub4e4\uc5b4\uac00\uae30 \uc804\uc5d0

\n", "\n", "\uc774 \uc790\ub8cc\ub294 \ube44\uac1c\ubc1c\uc790\uac00 \uc9e7\uc740 \uc2dc\uac04\uc5d0 \uac81\ub098 \ube60\ub974\uac8c(?) \ud30c\uc774\uc36c \ubb38\ubc95 \uae30\ucd08\ub97c \uc18c\uac1c\ud558\ub294 \ub0b4\uc6a9\uc785\ub2c8\ub2e4.\n", "\n", "\ub0b4\uacf5\uc774 \ubd80\uc871\ud558\uace0, \ubc1c\ud45c\ub825\uc774 \uc88b\uc9c0\ubabb\ud55c(;;) \uc81c\uac00 \ud30c\uc774\uc36c\uc758 \uae30\ucd08\ub97c \uc555\ucd95 \uc124\uba85\ud558\ub294 \uac83\uc740 \uac70\uc758 \ubd88\uac00\ub2a5\ud558\uae30\uc5d0;\n", "\n", "\uc774\ubbf8 \uc788\ub294 \ub9ce\uc740 \uc0ac\uc774\ud2b8\ub97c \ucd5c\ub300\ud55c \ud65c\uc6a9\ud558\uae30\ub85c \ud558\uc600\uc2b5\ub2c8\ub2e4.\n", "\n", "\uadf8\ub9ac\uace0 \ub2e4\ub8e8\uc9c0 \ubabb\ud55c, \uc798 \ubaa8\ub974\ub294 \ud30c\uc774\uc36c \ubb38\ubc95\uc774 \ub098\uc624\uba74 \uc560\ud504\ud130\uc11c\ube44\uc2a4\ub85c \uc124\uba85\ub4dc\ub9ac\uaca0\uc2b5\ub2c8\ub2e4.\n", "\n", "\uc2a4\ud130\ub514\ub97c \uc9c4\ud589\ud558\uba74\uc11c \uc0ac\uc18c\ud55c \uac83\uc774\ub77c\ub3c4 \uc0c1\uad00\uc5c6\uc774 \ubb3c\uc5b4\ubd10\uc8fc\uc138\uc694. \n", "\n", "\uc81c\uac00 \ubaa8\ub974\ub294 \uac83\uc744 \ubb3c\uc5b4\ubd10\ub3c4 \uc800\ub610\ud55c \uacf5\ubd80\uac00 \ub418\uae30\uc5d0 \ud658\uc601\ud569\ub2c8\ub2e4. :)\n", "\n", "--- \n", "\n", "1) \uc5ec\uae30\uc11c \uc544\uc8fc \uc9e7\uac8c \ubb38\ubc95 \uae30\ucd08 \uac1c\ub150\uc744 \uc124\uba85\ud558\uace0, \n", "\n", "2) **[learn x in y minute | python](http://learnxinyminutes.com/docs/ko-kr/python-kr/) ** \uc0ac\uc774\ud2b8\uc5d0\uc11c \uc774\uc5b4\uc11c \ubcf4\uba74\uc11c \ubb38\ubc95\uc744 \uc124\uba85\ud558\uace0, \n", "\n", "3) **[\ubc14\uc774\uc624\uc2a4\ud540 ipython \uc0ac\uc6a9\ubc95 \uc18c\uac1c \uc790\ub8cc](http://nbviewer.ipython.org/gist/irobii/014b8aa3574090a0d04a)** \uc0ac\uc774\ud2b8\ub97c \ud1b5\ud574 ipython \uc0ac\uc6a9\ubc95\uc5d0 \ub300\ud574 \uc124\uba85\ud558\uaca0\uc2b5\ub2c8\ub2e4.\n", "\n", "4) \uadf8\ub9ac\uace0 \uc2a4\ud130\ub514 \ub808\ud30c\uc9c0\ud1a0\ub9ac\ub85c \uc0ac\uc6a9 \uc911\uc778 Git \uc5d0 \ub300\ud574 **[learn x in y minute | git](http://learnxinyminutes.com/docs/git/)** \uc744 \ud1b5\ud574 \uc18c\uac1c\ud558\uaca0\uc2b5\ub2c8\ub2e4.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "

\ubcc0\uc218

\n", "\n", "\ubaa8\ub4e0 \uac12\uc740 \uadf8 \uac12\uc744 \ub2f4\uae30 \uc704\ud55c '\uc6a9\uae30'\uac00 \uc788\ub2e4. \n", "\n", "\ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uc5d0\uc11c \uc774 \uc6a9\uae30\ub97c '\ud0c0\uc785' \uc774\ub77c\uace0 \ud55c\ub2e4. \uc989, \ud0c0\uc785\uc774 \ud574\ub2f9 \uac12\uc774 \ub4e4\uc5b4\uc788\ub294 \uc6a9\uae30\uc774\ub2e4.\n", "\n", "'\ubcc0\uc218'\ub294 \uc77c\uc885\uc758 '\uac12\uc774 \ub2f4\uae34 \uc6a9\uae30'\uc744 \uc9c0\uce6d\ud558\ub294 '\ud0dc\uadf8'\ub77c\uace0 \ubcfc \uc218 \uc788\ub2e4." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# \uc22b\uc790\ub098 \ubb38\uc790\uc5f4 \uac12\uc5d0\ub2e4\uac00 a, b \ub77c\ub294 \uc774\ub984\uc758 \ubcc0\uc218\ub85c \ud560\ub2f9\ud588\ub2e4.\n", "a = 1\n", "b = \"python is great\"\n", "\n", "print a\n", "print b" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1\n", "python is great\n" ] } ], "prompt_number": 1 }, { "cell_type": "markdown", "metadata": {}, "source": [ "'\uc6a9\uae30'\ub97c \uc911\ucca9\uc2dc\ucf1c, \uc5ec\ub7ec\uac1c\ub97c \ub2f4\uc740 \uc6a9\uae30\ub3c4 \ub9cc\ub4e4 \uc218 \uc788\ub2e4.\n", "\n", "\uc544\ub798\ucc98\ub7fc \ub098\uc5f4\ub41c \ud615\ud0dc\ub97c \ud0c0\uc785\uc73c\ub85c\ub294 '\ub9ac\uc2a4\ud2b8' \uc640 '\ud29c\ud50c' \uc774 \uc788\ub2e4. " ] }, { "cell_type": "code", "collapsed": false, "input": [ "# list type\n", "lst = [1, 2, 3]\n", "# tuple type\n", "tup = (1, 2, 3)\n", "\n", "# \ud2b9\uc815 \uc704\uce58\uc758 \uac12\uc744 \ucc3e\uc544\uc62c\ub54c\ub294 '\uc778\ub371\uc2a4'\ub77c\ub294 \uc22b\uc790\ub85c \ucc3e\ub294\ub2e4. \ub300\ubd80\ubd84\uc758 \ud504\ub85c\uadf8\ub798\ubc0d \uc5b8\uc5b4\uc5d0\uc11c 0\ubd80\ud130 \uc2dc\uc791\ud55c\ub2e4.\n", "print \"lst[0] = \" , lst[0]\n", "\n", "# \ub458 \ub2e4 \ub098\uc5f4\ub41c \ud615\ud0dc\ub85c\uc368 \uc778\ub371\uc2a4\ub85c \uc6d0\ud558\ub294 \uac12\ub4e4\ub9cc\uc744 \ucc3e\uc544\uc624\ub294 \uac83\uc774 \uac00\ub2a5\ud558\uc9c0\ub9cc, \n", "# \ucc28\uc774\uc810\uc740 tuple \uc740 \uc7ac\ud560\ub2f9\uc774 \uc548\ub41c\ub2e4. \uac12\uc774 \uace0\uc815\uc801\uc778 '\uc0c1\uc218'\ub791 \ube44\uc2b7\ud558\ub2e4.\n", "\n", "lst[1] = 100\n", "print \"lst = \", lst\n", "\n", "tup[1] = 100" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "lst[0] = 1\n", "lst = [1, 100, 3]\n" ] }, { "ename": "TypeError", "evalue": "'tuple' object does not support item assignment", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[0;32mprint\u001b[0m \u001b[0;34m\"lst = \"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mlst\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 14\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 15\u001b[0;31m \u001b[0mtup\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m100\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: 'tuple' object does not support item assignment" ] } ], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\uac12\uc774 \ub098\uc5f4\ub41c \ub9ac\uc2a4\ud2b8\uc758 \uacbd\uc6b0, \uac12\uc744 \ucc3e\uae30 \uc704\ud574 '\uc778\ub371\uc2a4' \uc22b\uc790\ub85c \ucc3e\uc544\uc57c\ub9cc \ud588\ub2e4. \n", "\n", "\ud558\uc9c0\ub9cc, \uc778\ub371\uc2a4\ub77c\ub294 \uc22b\uc790 \ub9d0\uace0 \uc880 \ub354 \uae30\uc5b5\ud558\uae30 \uc26c\uc6b4 '\ud0a4'\ub85c \ucc3e\uc744 \uc218 \uc788\ub294 \ud0c0\uc785\uc774 \uc788\ub2e4.\n", "\n", "\uc774\ub7f0 \ud615\ud0dc\uc758 \uc6a9\uae30(=\ud0c0\uc785)\uc744 **\ub515\uc154\ub108\ub9ac**\ub77c\uace0 \ud55c\ub2e4." ] }, { "cell_type": "code", "collapsed": false, "input": [ "# dictionary type\n", "dic = {\"one\": 1, \"two\": 2, \"three\": 3}\n", "dic\n", "#=> {'three': 3, 'two': 2, 'one': 1}\n", "\n", "dic[\"two\"]\n", "#=> 2" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 3, "text": [ "2" ] } ], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "\uc9c0\uae08\uae4c\uc9c0 \uc22b\uc790 \ud558\ub098, \ubb38\uc790\uc5f4 \uac19\uc740 \uc6a9\uae30(\ud0c0\uc785)\uacfc, \n", "\n", "\ub098\uc5f4\ub41c \ud615\ud0dc\uc758 \ub9ac\uc2a4\ud2b8\uc640 \ud29c\ud50c \uac19\uc740 \uc6a9\uae30(\ud0c0\uc785)\uacfc \n", "\n", "\uc880 \ub354 \uc27d\uac8c \ucc3e\uc744 \uc218 \uc788\ub294 \ub515\uc154\ub108\ub9ac \uac19\uc740 \uc6a9\uae30(\ud0c0\uc785) \ub9d0\uace0\ub3c4, \n", "\n", "**\uc774\ubcf4\ub2e4 \ub354 \ud06c\uace0 \ubcf5\uc7a1\ud55c '\uc6a9\uae30'\ub85c\uc368 '\ud074\ub798\uc2a4' \ub77c\ub294 \uac83\uc774 \uc788\ub2e4.**\n", "\n", "--- \n", "\n", "\uadf8\ub7f0\ub370, \ud074\ub798\uc2a4\ub97c \uc18c\uac1c\ud558\uae30 \uc804\uc5d0 **\ud568\uc218**\uc5d0 \ub300\ud574\uc11c \uba3c\uc800 \uc54c\uc544\ubcfc \ud544\uc694\uac00 \uc788\ub2e4.\n", "\n", "**\ubcc0\uc218** \uac00 \uc5b4\ub5a4 '\uc6a9\uae30'\uc744 \uc9c0\uce6d\ud558\uae30 \uc704\ud55c \uac83\uc774\ub77c\uba74, \n", "\n", "**\ud568\uc218** \ub294 \uc5b4\ub5a4 '\ud589\ub3d9'\uc744 \uc9c0\uce6d\ud558\uae30 \uc704\ud55c \uac83\uc785\ub2c8\ub2e4." ] }, { "cell_type": "code", "collapsed": false, "input": [ "def add(a, b):\n", " return a + b\n", "\n", "add(1, 2)\n", "#=> 3" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 4, "text": [ "3" ] } ], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "--- \n", "\n", "\ub2e4\uc2dc **\ud074\ub798\uc2a4**\ub85c \ub3cc\uc544\uc624\uba74, \n", "\n", "\ud074\ub798\uc2a4\ub77c\ub294 \uac83\uc740 '\uc6a9\uae30' + '\ud589\ub3d9'\uc744 \ud569\uccd0\ub193\uc740 \uc880 \ub354 \ud06c\uace0 \ubcf5\uc7a1\ud55c '\uc6a9\uae30'\ub77c\uace0 \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n", "\n", "\ubcf4\ud1b5 \ud569\uce58\ub294 \uae30\uc900\uc740 \ub370\uc774\ud130 - \ud568\uc218\uac04\uc5d0 \ubc00\uc811\ud55c \uad00\ub828\uc774 \uc788\uc5b4 \ud558\ub098\uc758 \ub369\uc5b4\ub9ac\ub85c \ub2e4\ub8e8\uae30 \uc704\ud568\uc785\ub2c8\ub2e4.\n", "\n", "(\ub2e8, \ud074\ub798\uc2a4 \ub0b4\ubd80\uc5d0 \uc788\ub294 \ud568\uc218\ub97c **\uba54\uc11c\ub4dc** \ub77c\uace0 \ud558\uba70, \ud568\uc218\uc640 \uc57d\uac04 \ub2e4\ub985\ub2c8\ub2e4.)\n", "\n", "\ubcf5\uc7a1\ud55c \ub9cc\ud07c, \ubc18\ub4dc\uc2dc \uc0ac\uc6a9\ud558\uae30 \uc804\uc5d0 **\uc124\uacc4(\ub514\uc790\uc778)**\ub97c \ud574\uc57c \ud569\ub2c8\ub2e4.\n" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Duck \ud074\ub798\uc2a4 \uc124\uacc4\ud558\uae30\n", "class Duck(object):\n", " energy = 0\n", " \n", " def eat(self, e):\n", " self.energy += e\n", " \n", " def poop(self):\n", " self.energy -= 10\n", " if self.energy < 0:\n", " self.energy = 0\n", " \n", " def speak(self):\n", " return 'squawk!'\n", " \n", " def is_hungry(self):\n", " if self.energy < 50:\n", " return 'squawk(yes)... squawk(hungry)...'\n", " else:\n", " return 'squawk!(no) squawk!(not hungry)'\n", " \n", " \n", "# \uc774\uc81c Duck \ud074\ub798\uc2a4 \ud0c0\uc785 \uc0ac\uc6a9\uac00\ub2a5\n", "duck = Duck()\n", "\n", "duck.eat(100)\n", "print duck.speak()\n", "print duck.is_hungry()\n", "\n", "for i in range(6):\n", " duck.poop()\n", "\n", "print 'after poop...'\n", "print duck.is_hungry()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "squawk!\n", "squawk!(no) squawk!(not hungry)\n", "after poop...\n", "squawk(yes)... squawk(hungry)...\n" ] } ], "prompt_number": 5 }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "\ubaa8\ub4c8 \uc784\ud3ec\ud2b8 \ud558\uae30\n", "\n", "\uc784\ud3ec\ud2b8\ub97c \ud1b5\ud574\uc11c \uc774\ubbf8 \ub9cc\ub4e4\uc5b4\uc9c4 \ubcc0\uc218, \ud568\uc218, \ud074\ub798\uc2a4\ub97c \uac00\uc838\ub2e4 \uc4f8 \uc218 \uc788\uc2b5\ub2c8\ub2e4." ] }, { "cell_type": "code", "collapsed": false, "input": [ "import math\n", "\n", "math.ceil(1.5)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "2.0" ] } ], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "math.pi" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "3.141592653589793" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "\uc9c0\uae08\uae4c\uc9c0 \uac12\uc744 \ub2f4\ub294 '\uc6a9\uae30' \ub77c\ub294 \uac1c\ub150\uc73c\ub85c \ud0c0\uc785, \ub9ac\uc2a4\ud2b8, \ub515\uc154\ub108\ub9ac, \ud074\ub798\uc2a4\ub97c \uc124\uba85\ud558\uc600\uace0, \n", "\n", "\uc774\ubc88\uc5d4 \uc81c\uc5b4 \ud750\ub984\uc5d0 \ub300\ud574 \uc18c\uac1c\ud558\uaca0\uc2b5\ub2c8\ub2e4.\n", "\n", "\ub2e8\uc21c\ud788 \uba85\ub839\uc5b4 \uc2e4\ud589 \uc21c\uc11c\uac00 \uc717\uc904\ubd80\ud130 \ucc28\ub840\ub85c \uc2e4\ud589\ud558\ub294 \uac83 \uc678\uc5d0,\n", "\n", "\ub2e4\ub978 \ubc29\uc2dd\uc73c\ub85c \ubd84\uae30\ud558\uc5ec \uc2e4\ud589\ud558\uac8c \ud558\ub294 \ubc29\ubc95\uc774 \uc788\uc2b5\ub2c8\ub2e4. " ] }, { "cell_type": "code", "collapsed": false, "input": [ "# if else\n", "v = -10\n", "\n", "# \uacb0\uacfc\ub97c \ubcf4\uba74, if \uc870\uac74\uc2dd\uc5d0 \ub530\ub77c \uc2e4\ud589\ub418\ub294 \ub77c\uc778\uc774 \ub2ec\ub77c\uc9c4\ub2e4. \n", "if v > 0:\n", " print 'v is positive integer'\n", "elif v == 0:\n", " print 'v is zero'\n", "else:\n", " print 'v is negative integer'\n", " " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "v is negative integer\n" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "# for ~ in \n", "\n", "lst = range(5)\n", "lst\n", "#=> [0, 1, 2, 3, 4]\n", "\n", "# \uc21c\ucc28\uc801\uc73c\ub85c \uc694\uc18c\ub97c \uc21c\ud68c\ud560\ub54c \uc0ac\uc6a9\ud55c\ub2e4.\n", "for i in lst:\n", " print i\n", "\n", "# 0\n", "# 1\n", "# 2\n", "# 3\n", "# 4\n", "\n", "dic = {\"one\": 1, \"two\": 2, \"three\": 3}\n", "\n", "# \ub515\uc154\ub108\ub9ac\ub294 \uc21c\uc11c\ub97c \ubcf4\uc7a5\ud558\uc9c0 \uc54a\ub294\ub2e4.\n", "for k, v in dic.iteritems():\n", " print k, v\n", " \n", "# three 3\n", "# two 2\n", "# one 1\n", "\n", "# break \ub97c \uc0ac\uc6a9\ud558\uba74 \uc911\uac04\uc5d0 \uba48\ucd9c \uc218 \uc788\ub2e4. \n", "for i in lst:\n", " if i == 3:\n", " break\n", " else:\n", " print i\n", "# 0\n", "# 1\n", "# 2" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0\n", "1\n", "2\n", "3\n", "4\n", "three 3\n", "two 2\n", "one 1\n", "0\n", "1\n", "2\n" ] } ], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "# while : \uc870\uac74\uc774 \ucc38\uc774\uba74 \uacc4\uc18d \ub3c8\ub2e4.\n", "\n", "x = 0\n", "while x < 4:\n", " print x\n", " x += 1 # x = x + 1\uc758 \ucd95\uc57d\ud615\n", " \n", "# 0\n", "# 1\n", "# 2\n", "# 3" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0\n", "1\n", "2\n", "3\n" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }