{ "metadata": { "name": "", "signature": "sha256:f074171f0beadf84ece4c212b4c75d20055a1d6b4f02f4b7f0ff9519a99d9371" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "***\n", "# 4. \ubb38\uc790\uc5f4\n", "***\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 01 \uc2dc\ud000\uc2a4 \uc790\ub8cc\ud615\uc758 \ud2b9\uc131\n", "***\n", "### 1-1 \uc2dc\ud000\uc2a4 \uc790\ub8cc\ud615\uc774\ub780?\n", "- \uc800\uc7a5\ub41c \uac01 \uc694\uc18c\ub97c \uc815\uc218 Index\ub97c \uc774\uc6a9\ud558\uc5ec \ucc38\uc870\uac00 \uac00\ub2a5\ud55c \uc790\ub8cc\ud615 \n", "- \uc2dc\ud000\uc2a4(Sequence) \uc790\ub8cc\ud615: \ubb38\uc790\uc5f4, \ub9ac\uc2a4\ud2b8, \ud29c\ud50c" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcdef'\n", "L = [100,200,300]\n", "t = ('tuple', 'object', 1, 2)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \uc2dc\ud000\uc2a4 \uc790\ub8cc\ud615\uc774 \uac00\uc9c0\ub294 \uacf5\ud1b5\uc801\uc778 \uc5f0\uc0b0\n", " - \uc778\ub371\uc2f1 (Indexing)\n", " - \uc2ac\ub77c\uc774\uc2f1 (Slicing)\n", " - \ud655\uc7a5 \uc2ac\ub77c\uc774\uc2f1 (Extended Slicing)\n", " - \uc5f0\uacb0 (Concatenation)\n", " - \ubc18\ubcf5 (Repitition)\n", " - \uba64\ubc84\uc27d \ud14c\uc2a4\ud2b8 (Membership Test)\n", " - \uae38\uc774 \uc815\ubcf4 (Length)\n", " - for ~ in \ubb38" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-2 \uc778\ub371\uc2f1" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcdef'\n", "l = [100,200,300]\n", "print s[0]\n", "print s[1]\n", "print s[-1]\n", "print\n", "print l[1]\n", "l[1] = 900\n", "print l[1]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "a\n", "b\n", "f\n", "\n", "200\n", "900\n" ] } ], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "print l[100]" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "IndexError", "evalue": "list index out of range", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mIndexError\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mprint\u001b[0m \u001b[0ml\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m100\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mIndexError\u001b[0m: list index out of range" ] } ], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-3 \uc2ac\ub77c\uc774\uc2f1" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcdef'\n", "L = [100, 200, 300]\n", "\n", "print s[1:3]\n", "print s[1:]\n", "print s[:]\n", "print s[-100:100]\n", "print\n", "print L[:-1] # L[:2] \uc640 \ub3d9\uc77c\n", "print L[:2]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "bc\n", "bcdef\n", "abcdef\n", "abcdef\n", "\n", "[100, 200]\n", "[100, 200]\n" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-4 \ud655\uc7a5 \uc2ac\ub77c\uc774\uc2f1" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcd'\n", "print s[::2] #step:2 - \uc624\ub978\ucabd \ubc29\ud5a5\uc73c\ub85c 2\uce78\uc529\n", "print s[::-1] #step:-1 - \uc67c\ucabd \ubc29\ud5a5\uc73c\ub85c 1\uce78\uc529" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ac\n", "dcba\n" ] } ], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-5 \uc5f0\uacb0\ud558\uae30" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abc' + 'def'\n", "print s\n", "\n", "L = [1,2,3] + [4,5,6]\n", "print L" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "abcdef\n", "[1, 2, 3, 4, 5, 6]\n" ] } ], "prompt_number": 21 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-6 \ubc18\ubcf5\ud558\uae30" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'Abc'\n", "print s * 4\n", "\n", "L = [1,2,3]\n", "print L * 2" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "AbcAbcAbcAbc\n", "[1, 2, 3, 1, 2, 3]\n" ] } ], "prompt_number": 23 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-7 \uba64\ubc84\uc2ed \ud14c\uc2a4\ud2b8" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcde'\n", "print 'c' in s\n", "\n", "t = (1,2,3,4,5)\n", "print 2 in t\n", "print 10 in t\n", "print 10 not in t" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "True\n", "True\n", "False\n", "True\n" ] } ], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [ "print 'ab' in 'abcd'\n", "print 'ad' in 'abcd'\n", "print ' ' in 'abcd'\n", "print ' ' in 'abcd '" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "True\n", "False\n", "False\n", "True\n" ] } ], "prompt_number": 10 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 1-8 \uae38\uc774 \uc815\ubcf4" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'abcde'\n", "l = [1,2,3]\n", "t = (1, 2, 3, 4)\n", "print len(s)\n", "print len(l)\n", "print len(t)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "5\n", "3\n", "4\n" ] } ], "prompt_number": 11 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 02 \ubb38\uc790\uc5f4 \uc815\uc758\ud558\uae30\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2-1 \ud55c \uc904 \ubb38\uc790\uc5f4" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = ''\n", "str1 = 'Python is great!'\n", "str2 = \"Yes, it is.\"\n", "str3 = \"It's not like any other languages\"" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "str4 = 'Don\\'t walk. \"Run\"'\n", "print str4" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Don't walk. \"Run\"\n" ] } ], "prompt_number": 32 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \\ : \ub2e4\uc74c \ub77c\uc778\uc774 \ud604\uc7ac \ub77c\uc778\uc758 \ub4a4\uc5d0 \uc774\uc5b4\uc9d0\uc744 \ub098\ud0c0\ub0c4 " ] }, { "cell_type": "code", "collapsed": false, "input": [ "long_str = \"This is a rather long string \\\n", "containing back slash and new line.\\nGood!\"\n", "print long_str" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "This is a rather long string containing back slash and new line.\n", "Good!\n" ] } ], "prompt_number": 33 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2-2 \uc5ec\ub7ec \uc904 \ubb38\uc790\uc5f4" ] }, { "cell_type": "code", "collapsed": false, "input": [ "multiline = \"\"\" While the rest of the world has been catching on to\n", "the Perl scripting language, the Linux commnunity,\n", "long since past the pleasing shock of Perl's power,\n", "has been catching on to a different scripting animal -- Python.\"\"\"\n", "print multiline\n", "print\n", "ml = ''' While the rest of the world has been catching on to\n", "the Perl scripting language, the Linux commnunity,\n", "long since past the pleasing shock of Perl's power,\n", "has been catching on to a different scripting animal -- Python.'''\n", "print ml" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ " While the rest of the world has been catching on to\n", "the Perl scripting language, the Linux commnunity,\n", "long since past the pleasing shock of Perl's power,\n", "has been catching on to a different scripting animal -- Python.\n", "\n", " While the rest of the world has been catching on to\n", "the Perl scripting language, the Linux commnunity,\n", "long since past the pleasing shock of Perl's power,\n", "has been catching on to a different scripting animal -- Python.\n" ] } ], "prompt_number": 12 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2-3 \uc774\uc2a4\ucf00\uc774\ud504 \ubb38\uc790 (Escape Characters)\n", "\n", "| \uc774\uc2a4\ucf00\uc774\ud504 \ubb38\uc790 | \uc758\ubbf8 |\n", "|--------------|--------------|\n", "| \\ | \ub77c\uc778 \uc5f0\uc18d |\n", "| \\ \\ | \\ |\n", "| \\' | ' |\n", "| \\\" | \" |\n", "| \\b | \ubc31\uc2a4\ud398\uc774\uc2a4 |\n", "| \\n (\ub610\ub294 \\012) | \uac1c\ud589 |\n", "| \\t | \ud0ed |\n", "| \\0nn | 8\uc9c4\ubc95 \uc218 nn |\n", "| \\xnn | 16\uc9c4\ubc95 \uc218 nn |\n", "- \uc544\uc2a4\ud0a4 \ucf54\ub4dc (Ascii Codes)\n", " - http://www.powerindex.net/U_convt/ascii/ascii.htm" ] }, { "cell_type": "code", "collapsed": false, "input": [ "a =\\\n", "2\n", "print a\n", "print\n", "print '\\\\abc\\\\'\n", "print\n", "print 'abc\\tdef\\tghi'\n", "print\n", "print 'a\\nb\\nc'\n", "print\n", "print 'a\\012b\\012c'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "2\n", "\n", "\\abc\\\n", "\n", "abc\tdef\tghi\n", "\n", "a\n", "b\n", "c\n", "\n", "a\n", "b\n", "c\n" ] } ], "prompt_number": 17 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2-4 \ubb38\uc790\uc5f4 \uc5f0\uc0b0" ] }, { "cell_type": "code", "collapsed": false, "input": [ "str1 = 'First String'\n", "str2 = 'Second String'\n", "str3 = str1 + ' ' + str2\n", "print str3\n", "print str1 * 3\n", "print\n", "print str1[2]\n", "print str1[1:-1]\n", "print len(str1)\n", "print\n", "print str1[0:len(str1)]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "First String Second String\n", "First StringFirst StringFirst String\n", "\n", "r\n", "irst Strin\n", "12\n", "\n", "First String\n" ] } ], "prompt_number": 21 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ubb38\uc790\uc5f4 \uc790\ub8cc - Immutable (\ubcc0\uacbd\ubd88\uac00\ub2a5)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "str1[0] = 'f'" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "'str' 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[0;32m----> 1\u001b[0;31m \u001b[0mstr1\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'f'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: 'str' object does not support item assignment" ] } ], "prompt_number": 47 }, { "cell_type": "code", "collapsed": false, "input": [ "str1[0:3] = 'abc'" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "TypeError", "evalue": "'str' 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[0;32m----> 1\u001b[0;31m \u001b[0mstr1\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m'abc'\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mTypeError\u001b[0m: 'str' object does not support item assignment" ] } ], "prompt_number": 48 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \uc2dc\ud000\uc2a4 \uc790\ub8cc\ud615\uc740 for ~ in \ubb38\uc5d0 \uc758\ud574 \uc790\ub8cc \ub0b4\uc758 \uac01 \uc6d0\uc18c\ub97c \ubf51\uc544\ub0bc \uc218 \uc788\ub2e4." ] }, { "cell_type": "code", "collapsed": false, "input": [ "for c in 'abcd':\n", " print c," ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "a b c d\n" ] } ], "prompt_number": 49 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 03 \ubb38\uc790\uc5f4\uc758 \ubcc0\uacbd\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ubb38\uc790\uc5f4 \ubcc0\uacbd\uc744 \uc704\ud574\uc11c\ub294 Slicing \ud65c\uc6a9" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'spam and egg'\n", "s = s[:4] + ', cheese, ' + s[5:]\n", "s" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 24, "text": [ "'spam, cheese, and egg'" ] } ], "prompt_number": 24 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 04 \ubb38\uc790\uc5f4 \ud3ec\ub9e4\ud305\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4-1 \ud29c\ud50c\uc744 \uc774\uc6a9\ud55c \ud3ec\ub9e4\ud305" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 1) \ubb38\uc790\uc5f4 \ubcc0\ud658" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- %s \uc5f0\uc0b0\uc790: \ud3ec\ub9e4\ud305\ud560 \uac12\uc744 \ubb38\uc790\uc5f4\ub85c \ubc1b\uc544\ub0c4\n", "- % \ud29c\ud50c: \ud3ec\ub9e4\ud305 \ub0b4\uc5d0 \uac12\uc744 \ub123\uc5b4\uc90c" ] }, { "cell_type": "code", "collapsed": false, "input": [ "format = 'name = %s, age = %s'\n", "format" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 51, "text": [ "'name = %s, age = %s'" ] } ], "prompt_number": 51 }, { "cell_type": "code", "collapsed": false, "input": [ "format % ('gslee', 24)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 52, "text": [ "'name = gslee, age = 24'" ] } ], "prompt_number": 52 }, { "cell_type": "code", "collapsed": false, "input": [ "letter = '''\n", "\uc548\ub155\ud558\uc138\uc694 %s\ub2d8,\n", "\n", "\uc624\ub298 \ubc24 \ud30c\ud2f0\uc5d0 \ucc38\uc11d\ud574 \uc8fc\uc2e4 \uc218 \uc788\ub098\uc694?\n", "\n", "\uadf8\ub7fc..\n", "\n", "\uc774\uac15\uc131 \ub4dc\ub9bc'''\n", "name = '\ud64d\uae38\ub3d9'\n", "print letter % name\n", "print \n", "names = ['\ud55c\ud559\uc2e0', '\uc815\uc778\uc219', '\ubc15\ubbf8\uacbd']\n", "for name in names:\n", " print letter % name\n", " print '-' * 40\n", " print" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "\uc548\ub155\ud558\uc138\uc694 \ud64d\uae38\ub3d9\ub2d8,\n", "\n", "\uc624\ub298 \ubc24 \ud30c\ud2f0\uc5d0 \ucc38\uc11d\ud574 \uc8fc\uc2e4 \uc218 \uc788\ub098\uc694?\n", "\n", "\uadf8\ub7fc..\n", "\n", "\uc774\uac15\uc131 \ub4dc\ub9bc\n", "\n", "\n", "\uc548\ub155\ud558\uc138\uc694 \ud55c\ud559\uc2e0\ub2d8,\n", "\n", "\uc624\ub298 \ubc24 \ud30c\ud2f0\uc5d0 \ucc38\uc11d\ud574 \uc8fc\uc2e4 \uc218 \uc788\ub098\uc694?\n", "\n", "\uadf8\ub7fc..\n", "\n", "\uc774\uac15\uc131 \ub4dc\ub9bc\n", "----------------------------------------\n", "\n", "\n", "\uc548\ub155\ud558\uc138\uc694 \uc815\uc778\uc219\ub2d8,\n", "\n", "\uc624\ub298 \ubc24 \ud30c\ud2f0\uc5d0 \ucc38\uc11d\ud574 \uc8fc\uc2e4 \uc218 \uc788\ub098\uc694?\n", "\n", "\uadf8\ub7fc..\n", "\n", "\uc774\uac15\uc131 \ub4dc\ub9bc\n", "----------------------------------------\n", "\n", "\n", "\uc548\ub155\ud558\uc138\uc694 \ubc15\ubbf8\uacbd\ub2d8,\n", "\n", "\uc624\ub298 \ubc24 \ud30c\ud2f0\uc5d0 \ucc38\uc11d\ud574 \uc8fc\uc2e4 \uc218 \uc788\ub098\uc694?\n", "\n", "\uadf8\ub7fc..\n", "\n", "\uc774\uac15\uc131 \ub4dc\ub9bc\n", "----------------------------------------\n", "\n" ] } ], "prompt_number": 27 }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 2) \uc22b\uc790 \ubcc0\ud658" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "| \ud3ec\ub9f7\ud305 \ubb38\uc790 | \uc124\uba85 |\n", "|-------------|------------------------------------------------------------------------------|\n", "| %s | \ubb38\uc790\uc5f4\uc744 \ud3ec\ud568\ud55c \uc784\uc758\uc758 \uac1d\uccb4\ub97c \ubb38\uc790\uc5f4\ub85c \ubcc0\ud658\ud558\uc5ec \ucd9c\ub825 (str() \ub0b4\uc7a5 \ud568\uc218 \uc0ac\uc6a9) |\n", "| %r | \ubb38\uc790\uc5f4\uc744 \ud3ec\ud568\ud55c \uc784\uc758\uc758 \uac1d\uccb4\ub97c \ubb38\uc790\uc5f4\ub85c \ubcc0\ud658\ud558\uc5ec \ucd9c\ub825 (repr() \ub0b4\uc7a5 \ud568\uc218 \uc0ac\uc6a9) |\n", "| %c | 1\uae00\uc790 \ubb38\uc790 (ex. '%c' % 'k) |\n", "| %d | 10\uc9c4 \uc815\uc218 (%5d: 5\uc790\ub9ac\ub97c \ud655\ubcf4\ud55c \ud6c4 \uc815\uc218 \ud3ec\ub9f7\ud305) |\n", "| %i | %d\uc640 \ub3d9\uc77c |\n", "| %u | \ubd80\ud638 \uc5c6\ub294 \uc815\uc218. \uc74c\uc218\ub294 \uc591\uc218\ucc98\ub7fc \ud574\uc11d\ud568 (ex. '%u' % -12 --> '4294967284') |\n", "| %o | 8\uc9c4\uc218 \uc815\uc218 (ex. '%o' % 13 --> 15) |\n", "| %x | 16\uc9c4\uc218 \uc815\uc218 (\uc18c\ubb38\uc790 \ud45c\ud604) (ex. '%x' % 13 --> 'd') |\n", "| %X | 16\uc9c4\uc218 \uc815\uc218 (\ub300\ubb38\uc790 \ud45c\ud604) (ex. '%X' % 13 --> 'D') |\n", "| %e | \ubd80\ub3d9 \uc18c\uc218\uc810 \uc2e4\uc218\ub97c \uc9c0\uc218 \ud615\ud0dc\ub85c \ud45c\ud604 (%.2e: 2\uc790\ub9ac\ub294 \uc18c\uc218\uc810 \uc774\ud558 \uc790\ub9ac\uc218) |\n", "| %E | %e \uc640 \ub3d9\uc77c (\ub300\ubb38\uc790 E \ud45c\ud604) |\n", "| %f | \ubd80\ub3d9 \uc18c\uc218\uc810 \uc2e4\uc218 (%5.2f: \uc18c\uc218\uc810 \ud3ec\ud568 \ucd1d 5\uc790\ub9ac \ud655\ubcf4\ud55c \ud6c4 2\uc790\ub9ac\ub294 \uc18c\uc218\uc810 \uc774\ud558 \uc790\ub9ac\uc218) |\n", "| %g | \ubd80\ub3d9 \uc18c\uc218\uc810\uc744 \ud3b8\uc758\uc5d0 \ub530\ub77c \uc77c\ubc18 \uc2e4\uc218 \ud615\uc2dd\uc774\ub098 \uc9c0\uc218 \ud615\uc2dd\uc73c\ub85c \ubcc0\ud658 |\n", "| %G | %g\uc640 \ub3d9\uc77c (\ub300\ubb38\uc790 E \ud45c\ud604) |" ] }, { "cell_type": "code", "collapsed": false, "input": [ "\"%s -- %s -- %d -- %f -- %e\" % ((1, 2), [3,4,5], 5, 5.3, 101.3)\n" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 28, "text": [ "'(1, 2) -- [3, 4, 5] -- 5 -- 5.300000 -- 1.013000e+02'" ] } ], "prompt_number": 28 }, { "cell_type": "code", "collapsed": false, "input": [ "\"%r -- %r\" % ((1, 2), [3, 4, 5]) # str() \ub300\uc2e0\uc5d0 repr() \ub0b4\uc7a5 \ud568\uc218 \uc0ac\uc6a9" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 30, "text": [ "'(1, 2) -- [3, 4, 5]'" ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "\"%3d -- %5.2f -- %.2e\" % (5, 5.356, 101.3)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 57, "text": [ "' 5 -- 5.36 -- 1.01e+02'" ] } ], "prompt_number": 57 }, { "cell_type": "code", "collapsed": false, "input": [ "a = 456\n", "'%d -- %o -- %x -- %X' % (a, a, a, a)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 58, "text": [ "'456 -- 710 -- 1c8 -- 1C8'" ] } ], "prompt_number": 58 }, { "cell_type": "code", "collapsed": false, "input": [ "f = 1.23456789123456789\n", "f # \uc720\ud6a8\uc22b\uc790\uac00 \uae38\uac8c \ub098\uc634 " ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 32, "text": [ "1.234567891234568" ] } ], "prompt_number": 32 }, { "cell_type": "code", "collapsed": false, "input": [ "print f # \uc720\ud6a8\uc22b\uc790\uac00 \ub2e4\uc18c \uc9e7\uac8c \ub098\uc634\n", "print str(f) # 'print \uac1d\uccb4'\ub294 str(\uac1d\uccb4)\uc758 \uc218\ud589 \uacb0\uacfc\ub97c \ucd9c\ub825\ud568 \n", "print\n", "print '%f' % f # \uc18c\uc218\uc810 \uc774\ud558\ub97c 6\uac1c\ub85c \uc720\uc9c0 \n", "print '%g' % f # \uc18c\uc218\uc810 \uc774\ud558\ub97c 5\uac1c\ub85c \uc720\uc9c0" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1.23456789123\n", "1.23456789123\n", "\n", "1.234568\n", "1.23457\n" ] } ], "prompt_number": 42 }, { "cell_type": "code", "collapsed": false, "input": [ "g = 1.23456789123E30\n", "g" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 37, "text": [ "1.23456789123e+30" ] } ], "prompt_number": 37 }, { "cell_type": "code", "collapsed": false, "input": [ "print g\n", "print str(g)\n", "print\n", "print '%f' % g\n", "print '%g' % g" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1.23456789123e+30\n", "1.23456789123e+30\n", "\n", "1234567891230000003315149045760.000000\n", "1.23457e+30\n" ] } ], "prompt_number": 41 }, { "cell_type": "code", "collapsed": false, "input": [ "f = 1.23456789123456789\n", "print f\n", "print str(f)\n", "print repr(f) # repr()\uc740 \uc720\ud6a8 \uc22b\uc790\ub97c \uae38\uac8c \ucd9c\ub825" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1.23456789123\n", "1.23456789123\n", "1.234567891234568\n" ] } ], "prompt_number": 45 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4-2 \uc0ac\uc804(Dictionary)\uc744 \uc774\uc6a9\ud55c \ud3ec\ub9e4\ud305" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print '%(\uc774\ub984)s -- %(\uc804\ud654\ubc88\ud638)s' %{'\uc774\ub984':'\uc774\uac15\uc131', '\uc804\ud654\ubc88\ud638':5284}\n", "print '%(\uc774\ub984)s -- %(\uc804\ud654\ubc88\ud638)s' %{'\uc804\ud654\ubc88\ud638':5284, '\uc774\ub984':'\uc774\uac15\uc131'}\n", "print '%(\uc774\ub984)s -- %(\uc804\ud654\ubc88\ud638)s' %{'\uc804\ud654\ubc88\ud638':5284, '\uc774\ub984':'\uc774\uac15\uc131', '\uc8fc\uc18c':'Seoul'}" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\uc774\uac15\uc131 -- 5284\n", "\uc774\uac15\uc131 -- 5284\n", "\uc774\uac15\uc131 -- 5284\n" ] } ], "prompt_number": 47 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ubaa8\ub4e0 \ubcc0\uc218\ub294 Dictionary \ud615\ud0dc\ub85c \uad00\ub9ac\uac00 \ub428\n", "- vars(): \ubcc0\uc218 \uad00\ub9ac Dictionary\ub97c \ubc18\ud658\ud558\ub294 \ub0b4\uc7a5\ud568\uc218" ] }, { "cell_type": "code", "collapsed": false, "input": [ "name = 'gslee'\n", "# vars()\n", "vars()['name']" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 4, "text": [ "'gslee'" ] } ], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "name = 'gslee'\n", "phone = 5284\n", "'%(name)s -- %(phone)s' % vars()" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 50, "text": [ "'gslee -- 5284'" ] } ], "prompt_number": 50 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4-3 \ub2e8\uc21c\ud55c \ubb38\uc790\uc5f4 \ub300\uce58 \uae30\ub2a5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- string \ubaa8\ub4c8\uc758 \ud15c\ud50c\ub9bf (Template): \uae30\ubcf8\uc801\uc778 \ubb38\uc790\uc5f4 \ud3ec\ub9f7\ud305\uc744 \ub300\uce58\ud558\uc5ec \ud65c\uc6a9\ud560 \uc218 \uc788\ub294 \ubaa8\ub4c8\n", " - $\ud0a4\uc774\ub984\n", "- substitute(): \ud15c\ud50c\ub9bf\uc5d0 \uc788\ub294 \uac01 \ud0a4\uc5d0 \ub300\ud55c \uac12\uc744 Dictionary\ub85c \uc81c\uacf5\ud558\uc5ec \ub300\uce58\ud558\uc5ec \ubb38\uc790\uc5f4\ub85c \ubc18\ud658\ud568" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import string\n", "t = string.Template('$page is $title')\n", "t.substitute({'page':2, 'title': 'The Best of Times'})" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 12, "text": [ "'2 is The Best of Times'" ] } ], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "t = string.Template('$page *** $title ***')\n", "t.substitute({'page':2, 'title': 'The Best of Times'})" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 13, "text": [ "'2 *** The Best of Times ***'" ] } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "t = string.Template('$page *** $title ***')\n", "t.substitute({'page':2})" ], "language": "python", "metadata": {}, "outputs": [ { "ename": "KeyError", "evalue": "'title'", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mKeyError\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 1\u001b[0m \u001b[0mt\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mstring\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mTemplate\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'$page *** $title ***'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msubstitute\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m{\u001b[0m\u001b[0;34m'page'\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m/Applications/Canopy.app/appdata/canopy-1.4.1.1975.macosx-x86_64/Canopy.app/Contents/lib/python2.7/string.pyc\u001b[0m in \u001b[0;36msubstitute\u001b[0;34m(self, *args, **kws)\u001b[0m\n\u001b[1;32m 170\u001b[0m raise ValueError('Unrecognized named group in pattern',\n\u001b[1;32m 171\u001b[0m self.pattern)\n\u001b[0;32m--> 172\u001b[0;31m \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mpattern\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msub\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mconvert\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtemplate\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 173\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 174\u001b[0m \u001b[0;32mdef\u001b[0m \u001b[0msafe_substitute\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0margs\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m**\u001b[0m\u001b[0mkws\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;32m/Applications/Canopy.app/appdata/canopy-1.4.1.1975.macosx-x86_64/Canopy.app/Contents/lib/python2.7/string.pyc\u001b[0m in \u001b[0;36mconvert\u001b[0;34m(mo)\u001b[0m\n\u001b[1;32m 160\u001b[0m \u001b[0mnamed\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgroup\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'named'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mmo\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgroup\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'braced'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 161\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mnamed\u001b[0m \u001b[0;32mis\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mNone\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 162\u001b[0;31m \u001b[0mval\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmapping\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mnamed\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 163\u001b[0m \u001b[0;31m# We use this idiom instead of str() because the latter will\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 164\u001b[0m \u001b[0;31m# fail if val is a Unicode containing non-ASCII characters.\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", "\u001b[0;31mKeyError\u001b[0m: 'title'" ] } ], "prompt_number": 14 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- safe_substitute(): \uc0dd\ub7b5\ub41c \ud0a4\uc5d0 \ub300\ud574 KeyError \ubc1c\uc0dd\ud558\uc9c0 \uc54a\uace0 \ud0a4\uac00 \uadf8\ub300\ub85c \ucd9c\ub825\ub428" ] }, { "cell_type": "code", "collapsed": false, "input": [ "t = string.Template('$page: $title')\n", "t.safe_substitute({'page':3})" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 6, "text": [ "'3: $title'" ] } ], "prompt_number": 6 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- $$: $\ub97c \ucd9c\ub825\ud558\ub294 \ubc29\ubc95" ] }, { "cell_type": "code", "collapsed": false, "input": [ "t = string.Template('$page: $title $$')\n", "t.substitute({'page':2, 'title':'The Best'})" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 7, "text": [ "'2: The Best $'" ] } ], "prompt_number": 7 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 05 \ubb38\uc790\uc5f4 \uba54\uc3d8\ub4dc(Methods)\n", "***" ] }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'i like programming.'\n", "print s.upper()\n", "print s.upper().lower()\n", "print 'I Like Programming'.swapcase() # \ub300\ubb38\uc790\ub294 \uc18c\ubb38\uc790\ub85c, \uc18c\ubb38\uc790\ub294 \ub300\ubb38\uc790\ub85c \ubcc0\ud658\n", "print s.capitalize() # \uccab \ubb38\uc790\ub97c \ub300\ubb38\uc790\ub85c \ubcc0\ud658\n", "print s.title() # \uac01 \ub2e8\uc5b4\uc758 \uccab \ubb38\uc790\ub97c \ub300\ubb38\uc790\ub85c \ubcc0\ud658 " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "I LIKE PROGRAMMING.\n", "i like programming.\n", "i lIKE pROGRAMMING\n", "I like programming.\n", "I Like Programming.\n" ] } ], "prompt_number": 18 }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'i like programming, i like swimming.'\n", "print s.count('like') # 'like' \ubb38\uc790\uc5f4\uc774 \ucd9c\ud604\ud55c \ud69f\uc218\ub97c \ubc18\ud658\n", "print\n", "print s.find('like') # 'like'\uc758 \uccab\uae00\uc790 \uc704\uce58 (offset)\ub97c \ubc18\ud658\n", "print s.find('programming') # 'programming'\uc758 \uccab\uae00\uc790 \uc704\uce58\ub97c \ubc18\ud658\n", "print s.find('programmin') # 'programmin'\uc758 \uccab\uae00\uc790 \uc704\uce58\ub97c \ubc18\ud658\n", "print s.find('programmii') # 'programmii' \ub2e8\uc5b4\ub294 \uc5c6\uae30 \ub54c\ubb38\uc5d0 -1 \ubc18\ud658\n", "print\n", "print s.find('like', 3) # offset=3 \ubd80\ud130 'like'\uc744 \uac80\uc0c9\ud558\uc5ec 'like'\uc758 \uccab\uae00\uc790 \uc704\uce58 \ubc18\ud658 \n", "print s.find('my') # 'my' \ub2e8\uc5b4\ub294 \uc5c6\uae30 \ub54c\ubb38\uc5d0 -1 \ubc18\ud658\n", "print\n", "print s.rfind('like') # find('\ubb38\uc790\uc5f4')\uacfc \ub3d9\uc77c\ud558\uc9c0\ub9cc \uc624\ub978\ucabd\ubd80\ud130 \uac80\uc0c9\n", "print s.rfind('like', 23) # \uc624\ub978\ucabd\ubd80\ud130 \uac80\uc0c9\ud558\ub418 offset=23\uae4c\uc9c0\ub9cc \uac80\uc0c9\n", "print\n", "print s.index('like') # find('\ubb38\uc790\uc5f4')\uacfc \ub3d9\uc77c\ud558\uc9c0\ub9cc\n", "print s.index('my') # \ucc3e\uace0\uc790 \ud558\ub294 \ubb38\uc790\uc5f4\uc774 \uc5c6\uc73c\uba74 ValueError \ubc18\ud658\n" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "2\n", "\n", "2\n", "7\n", "7\n", "-1\n", "\n", "22\n", "-1\n", "\n", "22\n", "-1\n", "\n", "2\n" ] }, { "ename": "ValueError", "evalue": "substring not found", "output_type": "pyerr", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mValueError\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 14\u001b[0m \u001b[0;32mprint\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 15\u001b[0m \u001b[0;32mprint\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'like'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# find('\ubb38\uc790\uc5f4')\uacfc \ub3d9\uc77c\ud558\uc9c0\ub9cc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 16\u001b[0;31m \u001b[0;32mprint\u001b[0m \u001b[0ms\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'my'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;31m# \ucc3e\uace0\uc790 \ud558\ub294 \ubb38\uc790\uc5f4\uc774 \uc5c6\uc73c\uba74 ValueError \ubc18\ud658\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mValueError\u001b[0m: substring not found" ] } ], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'i like programming, i like swimming.'\n", "print s.index('like', 3) # find('\ubb38\uc790\uc5f4', offset)\uc640 \ub3d9\uc77c, \uc874\uc7ac\ud558\uc9c0 \uc54a\uc73c\uba74 \uc5d0\ub7ec\n", "print s.rindex('like') # rfind('\ubb38\uc790\uc5f4')\uacfc \ub3d9\uc77c\n", "print\n", "\n", "print s.startswith('i like') # 'i like'\ub85c \uc2dc\uc791\ud558\ub294 \ubb38\uc790\uc5f4\uc778\uc9c0 \ud310\ub2e8\n", "print s.startswith('I like') # \ub300\uc18c\ubb38\uc790 \uad6c\ubcc4\n", "print\n", "\n", "print s.endswith('swimming.') # 'swimming.'\ub85c \ub05d\ub098\ub294 \ubb38\uc790\uc5f4\uc778\uc9c0 \ud310\ub2e8\n", "print s.startswith('progr', 7) # 7\ubc88\uc9f8 \ubb38\uc790\uc5f4\uc774 'progr'\ub85c \uc2dc\uc791\ud558\ub294\uc9c0 \ud310\ub2e8\n", "print\n", "\n", "ss = '0123'\n", "print ss.endswith('23', 0, 4) # 0(included)\ubc88\uc9f8\uc5d0\uc11c 4(excluded)\ubc88\uc9f8 \uc0ac\uc774\uc758 \ubb38\uc790\uc5f4\uc774 '23'\ub85c \ub05d\ub098\ub294\uc9c0 \ud310\ub2e8\n", "print ss.endswith('12', 0, 3) # 0(included)\ubc88\uc9f8\uc5d0\uc11c 3(excluded)\ubc88\uc9f8 \uc0ac\uc774\uc758 \ubb38\uc790\uc5f4\uc774 '12'\ub85c \ub05d\ub098\ub294\uc9c0 \ud310\ub2e8" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "22\n", "22\n", "\n", "True\n", "False\n", "\n", "True\n", "True\n", "\n", "True\n", "True\n" ] } ], "prompt_number": 30 }, { "cell_type": "code", "collapsed": false, "input": [ "u = ' spam and ham '\n", "print u.strip() #\uc88c\uc6b0 \uacf5\ubc31\uc744 \uc81c\uac70\ud558\uc5ec \uc0c8\ub85c\uc6b4 \uc2a4\ud2b8\ub9c1 \uc0dd\uc131\n", "print u #\uc2a4\ud2b8\ub9c1\uc740 \ubcc0\uacbd\ubd88\uac00\ub2a5 \n", "y = u.strip() #strip()\ub294 \uc0c8\ub85c\uc6b4 \uc2a4\ud2b8\ub9c1\uc744 \uc0dd\uc131\ud568\n", "print y\n", "print\n", "\n", "print u.rstrip() #\uc624\ub978\ucabd \uacf5\ubc31 \uc81c\uac70\n", "print u.lstrip() #\uc67c\ucabd \uacf5\ubc31 \uc81c\uac70 \n", "print ' abc '.strip() \n", "print '><><><>'.strip('<>') #\uc2a4\ud2b8\ub9c1 \uc548\uc5d0 \uc9c0\uc815\ub41c \ubaa8\ub4e0\ubb38\uc790\ub97c \uc88c\uc6b0\uc5d0\uc11c \uc81c\uac70" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "spam and ham\n", " spam and ham \n", "spam and ham\n", "\n", " spam and ham\n", "spam and ham \n", "abc\n", "abc\n" ] } ], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "print '><><><>\\n'.strip('<>') #\uc88c\uc6b0 \ub05d\ucabd\uc774 \uc544\ub2cc \ub0b4\ubd80\uc5d0 \uc874\uc7ac\ud558\ub294 \uc9c0\uc815\ubb38\uc790\ub294 \uc81c\uac70\ub418\uc9c0 \uc54a\uc74c \n", "print '><>bc<><><>\\n'.strip('<>')\n", "print\n", "\n", "print u'\\u4000\\u4001abc\\u4000'\n", "print u'\\u4000\\u4001abc\\u4000'.strip(u'\\u4000')\n", "print\n", "\n", "p = ' \\t abc \\t '\n", "print p\n", "print p.strip()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "abc<><><>\n", "\n", "a<>bc<><><>\n", "\n", "\n", "\u4000\u4001abc\u4000\n", "\u4001abc\n", "\n", " \t abc \t \n", "abc\n" ] } ], "prompt_number": 2 }, { "cell_type": "code", "collapsed": false, "input": [ "u = 'spam and ham'\n", "print u.replace('spam', 'spam, egg') #replace()\ub294 \uc0c8\ub85c\uc6b4 \uc2a4\ud2b8\ub9c1\uc744 \uc0dd\uc131\ud568\n", "print u\n", "k = u.replace('spam', 'spam, egg')\n", "print k" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "spam, egg and ham\n", "spam and ham\n", "spam, egg and ham\n" ] } ], "prompt_number": 36 }, { "cell_type": "code", "collapsed": false, "input": [ "u = ' spam and ham '\n", "print u.split() # \uacf5\ubc31\uc73c\ub85c \ubd84\ub9ac (\ubaa8\ub4e0 \uacf5\ubc31 \uc81c\uac70 \ubc0f \ubb38\uc790\uc5f4 \ub0b4\uc758 \ub2e8\uc5b4 \ub9ac\uc2a4\ud2b8\ub97c \uc5bb\uc744 \uc218 \uc788\uc74c)\n", "print u.split('and') # 'and'\ub85c \ubd84\ub9ac\n", "print\n", "\n", "u2 = 'spam and ham\\tegg\\ncheese'\n", "print u2.split()" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "['spam', 'and', 'ham']\n", "[' spam ', ' ham ']\n", "\n", "['spam', 'and', 'ham', 'egg', 'cheese']\n" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "u = 'spam ham\\tegg\\ncheese'\n", "t = u.split() # \ubb38\uc790\uc5f4 \ub0b4\uc758 \ub2e8\uc5b4 \ub9ac\uc2a4\ud2b8 \n", "t2 = ':'.join(t) # \ub9ac\uc2a4\ud2b8 t \ub0b4\ubd80\uc758 \uac01 \uc6d0\uc18c\ub4e4\uc744 ':'\ub85c \uc5f0\uacb0\ud55c \ubb38\uc790\uc5f4 \ubc18\ud658\n", "print type(t2)\n", "print t2\n", "print\n", "t3 = \",\".join(t) # \ub9ac\uc2a4\ud2b8 t \ub0b4\ubd80\uc758 \uac01 \uc6d0\uc18c\ub4e4\uc744 ','\uc73c\ub85c \uc5f0\uacb0\ud55c \ubb38\uc790\uc5f4 \ubc18\ud658\n", "print t3\n", "print\n", "t4 = '\\n'.join(t) # \ub9ac\uc2a4\ud2b8 t \ub0b4\ubd80\uc758 \uac01 \uc6d0\uc18c\ub4e4\uc744 '\\n'\uc73c\ub85c \uc5f0\uacb0\ud55c \ubb38\uc790\uc5f4 \ubc18\ud658\n", "print t4\n", "print" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "spam:ham:egg:cheese\n", "\n", "spam,ham,egg,cheese\n", "\n", "spam\n", "ham\n", "egg\n", "cheese\n", "\n" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "u = \"\uc2a4\ud338 \ud584 \uacc4\ub780 \uce58\uc988\"\n", "t = u.split()\n", "print t\n", "print t[0], t[1], t[2], t[3]\n", "print\n", "u2 = u\"\uc2a4\ud338 \ud584 \uacc4\ub780 \uce58\uc988\"\n", "t2 = u2.split()\n", "print t2\n", "print t2[0], t2[1], t2[2], t2[3]" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "['\\xec\\x8a\\xa4\\xed\\x8c\\xb8', '\\xed\\x96\\x84', '\\xea\\xb3\\x84\\xeb\\x9e\\x80', '\\xec\\xb9\\x98\\xec\\xa6\\x88']\n", "\uc2a4\ud338 \ud584 \uacc4\ub780 \uce58\uc988\n", "\n", "[u'\\uc2a4\\ud338', u'\\ud584', u'\\uacc4\\ub780', u'\\uce58\\uc988']\n", "\uc2a4\ud338 \ud584 \uacc4\ub780 \uce58\uc988\n" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "lines = '''first line\n", "second line\n", "third line'''\n", "print type(lines)\n", "lines2 = lines.splitlines() # \ubb38\uc790\uc5f4\uc744 \ub77c\uc778 \ub2e8\uc704\ub85c \ubd84\ub9ac\ud55c \uac01 \uc6d0\uc18c\ub4e4\uc744 \uc9c0\ub2cc \ub9ac\uc2a4\ud2b8 \ubc18\ud658\n", "print type(lines2)\n", "print lines2" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "\n", "['first line', 'second line', 'third line']\n" ] } ], "prompt_number": 9 }, { "cell_type": "code", "collapsed": false, "input": [ "s = 'one:two:three:four'\n", "print s.split(':', 2) # \ub450 \ubc88\ub9cc \ubd84\ub9ac\ud558\uc5ec \uc5bb\uc740 \uac01 \uc6d0\uc18c\ub4e4\uc744 \ub9ac\uc2a4\ud2b8\uc5d0 \ub123\uc5b4 \ubc18\ud658\n", "print s.rsplit(':', 1) # \uc624\ub978\ucabd \ubd80\ud130 \ubd84\ub9ac\ud558\ub418 \ud55c \ubc88\ub9cc \ubd84\ub9ac\ud558\uc5ec \uc5bb\uc740 \uac01 \uc6d0\uc18c\ub4e4\uc744 \ub9ac\uc2a4\ud2b8\uc5d0 \ub123\uc5b4 \ubc18\ud658 " ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "['one', 'two', 'three:four']\n", "['one:two:three', 'four']\n" ] } ], "prompt_number": 31 }, { "cell_type": "code", "collapsed": false, "input": [ "u = 'spam and egg'\n", "c = u.center(60) # 60\uc790\ub9ac\ub97c \ud655\ubcf4\ud558\ub418 \uae30\uc874 \ubb38\uc790\uc5f4\uc744 \uac00\uc6b4\ub370 \uc815\ub82c\ud55c \uc0c8\ub85c\uc6b4 \ubb38\uc790\uc5f4 \ubc18\ud658\n", "print type(c)\n", "print c\n", "print u.ljust(60) # 60\uc790\ub9ac\ub97c \ud655\ubcf4\ud558\ub418 \uae30\uc874 \ubb38\uc790\uc5f4\uc744 \uc67c\ucabd \uc815\ub82c\ud55c \uc0c8\ub85c\uc6b4 \ubb38\uc790\uc5f4 \ubc18\ud658\n", "print u.rjust(60) # 60\uc790\ub9ac\ub97c \ud655\ubcf4\ud558\ub418 \uae30\uc874 \ubb38\uc790\uc5f4\uc744 \uc624\ub978\ucabd \uc815\ub82c\ud55c \uc0c8\ub85c\uc6b4 \ubb38\uc790\uc5f4 \ubc18\ud658" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", " spam and egg \n", "spam and egg \n", " spam and egg\n" ] } ], "prompt_number": 34 }, { "cell_type": "code", "collapsed": false, "input": [ "u = 'spam and egg'\n", "print u.center(60, '-') # \uacf5\ubc31\uc5d0 \ucc44\uc6cc\uc9c8 \ubb38\uc790\ub97c \uc120\ud0dd\ud560 \uc218 \uc788\uc74c\n", "print u.ljust(60, '-')\n", "print u.rjust(60, '-')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "------------------------spam and egg------------------------\n", "spam and egg------------------------------------------------\n", "------------------------------------------------spam and egg\n" ] } ], "prompt_number": 12 }, { "cell_type": "code", "collapsed": false, "input": [ "print '1\\tand\\t2'\n", "print '1\\tand\\t2'.expandtabs() # \ud0ed\uc0ac\uc774\uc988 \uc870\uc815, \uae30\ubcf8 8\uc790 \uac04\uaca9\n", "print '1\\tand\\t2'.expandtabs(8)\n", "print '1\\tand\\t2'.expandtabs(4) # 4\uc790 \uac04\uaca9\uc73c\ub85c \uc870\uc815" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1\tand\t2\n", "1 and 2\n", "1 and 2\n", "1 and 2\n" ] } ], "prompt_number": 41 }, { "cell_type": "code", "collapsed": false, "input": [ "print '1234'.isdigit() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \uc22b\uc790\uc778\uac00?\n", "print 'abcd'.isalpha() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \uc601\ubb38\uc790\uc778\uac00?\n", "print '1abc234'.isalnum() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \uc601\ubb38\uc790 \ub610\ub294 \uc22b\uc790\uc778\uac00? \n", "print 'abc'.islower() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \uc18c\ubb38\uc790\uc778\uac00?\n", "print 'ABC'.isupper() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \ub300\ubb38\uc790\uc778\uac00?\n", "print '\\t\\r\\n'.isspace() # \ubb38\uc790\uc5f4 \ub0b4\uc758 Character\ub4e4\uc774 \ubaa8\ub450 \uacf5\ubc31 \ubb38\uc790\uc778\uac00?\n", "print 'This Is A Title'.istitle() # \ubb38\uc790\uc5f4\uc774 Title \ud615\uc2dd (\uac01 \ub2e8\uc5b4\uc758 \uccab\uae00\uc790\uac00 \ub300\ubb38\uc790)\uc778\uac00?" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "True\n", "True\n", "True\n", "True\n", "True\n", "True\n", "True\n" ] } ], "prompt_number": 42 }, { "cell_type": "code", "collapsed": false, "input": [ "s = '123'\n", "print s.zfill(5) # 5\uae00\uc790 \uc790\ub9ac \ud655\ubcf4\ub4a4 \ubb38\uc790\uc5f4\uc744 \uc4f0\ub418 \ub0a8\ub294 \uacf5\ubc31\uc5d0\ub294 zero (0)\ub97c \ucc44\uc6c0 \n", "print 'goofy'.zfill(6) # 6\uae00\uc790 \uc790\ub9ac \ud655\ubcf4\ub4a4 ..." ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "00123\n", "0goofy\n" ] } ], "prompt_number": 45 }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### \uc608\uc81c1 - \ubb38\uc790\uc5f4 \ubd99\uc774\uae30 \ucf54\ub529 \ubc29\ubc95 \ube44\uad50 (\uc911\uc694)" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import time\n", "start_time = time.time()\n", "s = ''\n", "for k in range(1000000):\n", " s += 'python'\n", "end_time = time.time()\n", "print end_time - start_time" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0.23934006691\n" ] } ], "prompt_number": 43 }, { "cell_type": "code", "collapsed": false, "input": [ "start_time = time.time()\n", "t = []\n", "for k in range(1000000):\n", " t.append('python')\n", "s = ''.join(t)\n", "end_time = time.time()\n", "print end_time - start_time" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0.152743816376\n" ] } ], "prompt_number": 44 }, { "cell_type": "code", "collapsed": false, "input": [ "start_time = time.time()\n", "s = 'python' * 1000000\n", "end_time = time.time()\n", "print end_time - start_time" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0.00288701057434\n" ] } ], "prompt_number": 45 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 06 string \ubaa8\ub4c8\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 6-1 String \ubaa8\ub4c8 \uc0c1\uc218" ] }, { "cell_type": "code", "collapsed": false, "input": [ "import string\n", "\n", "print string.digits\n", "print string.octdigits\n", "print string.hexdigits\n", "print string.letters\n", "print string.lowercase\n", "print string.uppercase\n", "print string.punctuation # \uac01\uc885 \uae30\ud638\ub4e4\n", "print\n", "print string.printable # \uc778\uc1c4 \uac00\ub2a5\ud55c \ubaa8\ub4e0 \ubb38\uc790\ub4e4\n", "print string.whitespace # \uacf5\ubc31 \ubb38\uc790\ub4e4 '\\011\\012\\013\\014\\015'" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "0123456789\n", "01234567\n", "0123456789abcdefABCDEF\n", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\n", "abcdefghijklmnopqrstuvwxyz\n", "ABCDEFGHIJKLMNOPQRSTUVWXYZ\n", "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~\n", "\n", "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n", "\r", "\u000b", "\f", "\n", "\t\n", "\u000b", "\f", "\r", " \n" ] } ], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "x = 'a'\n", "print x in string.uppercase\n", "print x in string.lowercase" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "False\n", "True\n" ] } ], "prompt_number": 3 }, { "cell_type": "code", "collapsed": false, "input": [ "d = string.letters + string.digits\n", "print d" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\n" ] } ], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \uc6f9 \ud398\uc774\uc9c0\uc5d0\uc11c \ubc1b\uc544\ub0b8 \uc0ac\uc6a9\uc790 \uc544\uc774\ub514\uc758 \uc720\ud6a8\uc131 \ud310\ub2e8 \uc608\uc81c" ] }, { "cell_type": "code", "collapsed": false, "input": [ "userid = raw_input('your id:')" ], "language": "python", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "stream": "stdout", "text": [ "your id:ab#\n" ] } ], "prompt_number": 17 }, { "cell_type": "code", "collapsed": false, "input": [ "d = string.letters + string.digits\n", "for ch in userid:\n", " if ch not in d:\n", " print 'invalid user id'\n", " break" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "invalid user id\n" ] } ], "prompt_number": 18 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 07 \uc720\ub2c8\ucf54\ub4dc\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ud30c\uc774\uc36c 1.6\ubd80\ud130 \ub2e4\uad6d\uc5b4 \ubb38\uc790\uc758 \uc62c\ubc14\ub978 \ud45c\ud604\uc744 \uc704\ud558\uc5ec \uc720\ub2c8\ucf54\ub4dc \ud0c0\uc785 \uc9c0\uc6d0\uc774 \ub428\n", "- \uc720\ub2c8\ucf54\ub4dc \ud0c0\uc785\uc758 \ubb38\uc790\uc5f4 \ub9ac\ud130\ub7f4: u'Hello'" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print u'Spam and Egg'\n", "print \n", "a = 'a'\n", "b = u'bc'\n", "print type(a)\n", "print type(b)\n", "c = a + b # \uc77c\ubc18 \ubb38\uc790\uc5f4\uacfc \uc720\ub2c8\ucf54\ub4dc\ub97c \ud569\uce58\uba74 \uc720\ub2c8\ucf54\ub4dc\ub85c \ubcc0\ud658\n", "print type(c)\n", "print c" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Spam and Egg\n", "\n", "\n", "\n", "\n", "abc\n" ] } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "print u'Spam \\uB610 Egg' # \ubb38\uc790\uc5f4 \ub0b4\uc5d0 \uc720\ud2f0\ucf54\ub4dc \uc774\uc2a4\ucf00\uc774\ud504 \ubb38\uc790\uc778 \\uHHHH \uc0ac\uc6a9\uac00\ub2a5, HHHH\ub294 4\uc790\ub9ac 16\uc9c4\uc218 (unicode \ud3ec\ub9f7)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Spam \ub610 Egg\n" ] } ], "prompt_number": 20 }, { "cell_type": "code", "collapsed": false, "input": [ "a = unicode('\ud55c\uae00', 'utf-8') # '\ud55c\uae00' \ubb38\uc790\uc5f4\uc758 \uc778\ucf54\ub529 \ubc29\uc2dd\uc744 'utf-8'\ud615\ud0dc\ub85c \uc778\uc2dd\uc2dc\ud0a4\uba74\uc11c \ud574\ub2f9 \ubb38\uc790\uc5f4\uc744 unicode\ub85c \ubcc0\ud658\n", "print type(a)\n", "print a\n", "a" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\n", "\ud55c\uae00\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 31, "text": [ "u'\\ud55c\\uae00'" ] } ], "prompt_number": 31 }, { "cell_type": "code", "collapsed": false, "input": [ "a.encode('utf-8') # unicode \ud0c0\uc785\uc758 \ubb38\uc790\uc5f4\uc744 utf-8 \ubc29\uc2dd\uc73c\ub85c \uc778\ucf54\ub529" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 33, "text": [ "'\\xed\\x95\\x9c\\xea\\xb8\\x80'" ] } ], "prompt_number": 33 }, { "cell_type": "code", "collapsed": false, "input": [ "print len('\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655')\n", "print len(unicode('\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655', 'utf-8')) #\uc720\ub2c8\ucf54\ub4dc \ud0c0\uc785\uc758 \ubb38\uc790\uc5f4\uc740 \ud55c\uae00 \ubb38\uc790\uc5f4 \uae38\uc774\ub97c \uc62c\ubc14\ub974\uac8c \ubc18\ud658\ud568\n", "print len(u'\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "22\n", "8\n", "8\n" ] } ], "prompt_number": 19 }, { "cell_type": "code", "collapsed": false, "input": [ "u = unicode('\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655', 'utf-8') #\uc720\ub2c8\ucf54\ub4dc \ud0c0\uc785\uc758 \ud55c\uae00 \ubb38\uc790\uc5f4\uc5d0 \ub300\ud574\uc11c\ub294 \uc778\ub371\uc2f1 \ubc0f \uc2ac\ub77c\uc774\uc2f1\uc774 \uc62c\ubc14\ub974\uac8c \uc218\ud589\ub428 \n", "print u[0]\n", "print u[1]\n", "print u[:3]\n", "print u[4:]\n", "print u[::-1]\n", "print\n", "u2 = u'\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655' \n", "print u2[0]\n", "print u2[1]\n", "print u2[:3]\n", "print u2[4:]\n", "print u2[::-1]\n", "print \n", "u3 = '\ud55c\uae00\uacfc \uc138\uc885\ub300\uc655'\n", "print u3[0]\n", "print u3[1]\n", "print u3[:3]\n", "print u3[4:]\n", "print u3[::-1]\n", "print" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\ud55c\n", "\uae00\n", "\ud55c\uae00\uacfc\n", "\uc138\uc885\ub300\uc655\n", "\uc655\ub300\uc885\uc138 \uacfc\uae00\ud55c\n", "\n", "\ud55c\n", "\uae00\n", "\ud55c\uae00\uacfc\n", "\uc138\uc885\ub300\uc655\n", "\uc655\ub300\uc885\uc138 \uacfc\uae00\ud55c\n", "\n", "\ufffd\n", "\ufffd\n", "\ud55c\n", "\ufffd\ufffd\uacfc \uc138\uc885\ub300\uc655\n", "\ufffd\ufffd\uc00c\ub162\uce04\ufffd \ufffd\ufffd\ua038\ua715\ufffd\n", "\n" ] } ], "prompt_number": 22 }, { "cell_type": "code", "collapsed": false, "input": [ "print ord('A') # ord(): \ubb38\uc790\uc758 ASCII \ucf54\ub4dc\uac12 \ubc18\ud658\n", "print chr(65) # char(): ASCII \ucf54\ub4dc 65\ub97c \uc9c0\ub2c8\ub294 \ubb38\uc790\ub97c \ubc18\ud658" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "65\n", "A\n" ] } ], "prompt_number": 43 }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ucc38\uace0: http://www.fileformat.info/info/unicode/char/ac00/index.htm" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print ord(unicode('\uac00', 'utf-8'))\n", "print ord(u'\uac00')\n", "print hex(ord(unicode('\uac00', 'utf-8')))\n", "print hex(ord(u'\uac00'))\n", "print\n", "print unichr(0xac00)\n", "print\n", "print '\uac00'\n", "print\n", "print unichr(44032)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "44032\n", "44032\n", "0xac00\n", "0xac00\n", "\n", "\uac00\n", "\n", "\uac00\n", "\n", "\uac00\n" ] } ], "prompt_number": 27 }, { "cell_type": "code", "collapsed": false, "input": [ "i = 0\n", "while i < 100:\n", " print unichr(0xac00 + i)\n", " i = i + 1" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "\uac00\n", "\uac01\n", "\uac02\n", "\uac03\n", "\uac04\n", "\uac05\n", "\uac06\n", "\uac07\n", "\uac08\n", "\uac09\n", "\uac0a\n", "\uac0b\n", "\uac0c\n", "\uac0d\n", "\uac0e\n", "\uac0f\n", "\uac10\n", "\uac11\n", "\uac12\n", "\uac13\n", "\uac14\n", "\uac15\n", "\uac16\n", "\uac17\n", "\uac18\n", "\uac19\n", "\uac1a\n", "\uac1b\n", "\uac1c\n", "\uac1d\n", "\uac1e\n", "\uac1f\n", "\uac20\n", "\uac21\n", "\uac22\n", "\uac23\n", "\uac24\n", "\uac25\n", "\uac26\n", "\uac27\n", "\uac28\n", "\uac29\n", "\uac2a\n", "\uac2b\n", "\uac2c\n", "\uac2d\n", "\uac2e\n", "\uac2f\n", "\uac30\n", "\uac31\n", "\uac32\n", "\uac33\n", "\uac34\n", "\uac35\n", "\uac36\n", "\uac37\n", "\uac38\n", "\uac39\n", "\uac3a\n", "\uac3b\n", "\uac3c\n", "\uac3d\n", "\uac3e\n", "\uac3f\n", "\uac40\n", "\uac41\n", "\uac42\n", "\uac43\n", "\uac44\n", "\uac45\n", "\uac46\n", "\uac47\n", "\uac48\n", "\uac49\n", "\uac4a\n", "\uac4b\n", "\uac4c\n", "\uac4d\n", "\uac4e\n", "\uac4f\n", "\uac50\n", "\uac51\n", "\uac52\n", "\uac53\n", "\uac54\n", "\uac55\n", "\uac56\n", "\uac57\n", "\uac58\n", "\uac59\n", "\uac5a\n", "\uac5b\n", "\uac5c\n", "\uac5d\n", "\uac5e\n", "\uac5f\n", "\uac60\n", "\uac61\n", "\uac62\n", "\uac63\n" ] } ], "prompt_number": 4 }, { "cell_type": "markdown", "metadata": {}, "source": [ "***\n", "## 08 \ubb38\uc11c \ubb38\uc790\uc5f4\n", "***" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- \ud30c\uc774\uc36c \uc8fc\uc11d\n", " - \\#\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95\n", " - \ubb38\uc11c \ubb38\uc790\uc5f4 (Documentation String, docstring)\uc744 \uc0ac\uc6a9\ud558\ub294 \ubc29\ubc95" ] }, { "cell_type": "code", "collapsed": false, "input": [ "def add(a, b):\n", " \"add(a, b) returns a+b\"\n", " return a + b" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "print add.__doc__" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "add(a, b) returns a+b\n" ] } ], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "help(add)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Help on function add in module __main__:\n", "\n", "add(a, b)\n", " add(a, b) returns a+b\n", "\n" ] } ], "prompt_number": 8 }, { "cell_type": "code", "collapsed": false, "input": [ "?add" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 9 } ], "metadata": {} } ] }