Slide 1

Slide 1 text

͋ͷ͜Ζͷ1ZUIPO 1 1ZUIPO&0-1BSUZJO5PLZP "UTVP*TIJNPUP

Slide 2

Slide 2 text

wQZUIPOKQ؅ཧਓ wϑϦʔϓϩάϥϚ ੴຊರ෉ !BUTVPJTIJNPUP ࣗݾ঺հ 2

Slide 3

Slide 3 text

͋ͷ͜Ζͷ1ZUIPO w ଟ෼ɺ࠷ॳʹ1ZUIPOΛ࢖ͬͨͷ͸೥ w όʔδϣϯ͸ଟ෼1ZUIPO w ଟ෼ɺ/JGUZ4FSWFͷϓϩάϥϚձٞࣨΈ͍ͨͳͱ͜Ͱݟ ͔͚ͨ w 1ZUIPOͬͯͳʹ͕ྑ͔ͬͨΜͩΖ͏ʁ 3

Slide 4

Slide 4 text

౰࣌ͷ࠷ઌ୺ٕज़ w ΦϒδΣΫτࢦ޲ϓϩάϥϛϯά w ؔ਺ܕϓϩάϥϛϯά w Ͱ΋͍Ζ͍Ζ࢒೦ͩͬͨʜ 4

Slide 5

Slide 5 text

೔ຊޠ͕࢖͑ͳ͍ w 6OJDPEFͷެ։͸dͰɺ1ZUIPOʙϦϦʔε࣌ʹ ͸ଘࡏ͠ͳ͔ͬͨ w ͍ΖΜͳจࣈίʔυ͝ͱʹ഑ྀ͕ඞཁͳ҉ࠇ࣌୅ w 4IJGU+*4͸ѱເ 5

Slide 6

Slide 6 text

4IJGU+*4൛1ZUIPO w ·ͩ4PVSDF'PSHF΋ͳ͍࣌୅Ͱɺ࠷ॳ͸ݸਓͷ8FCαΠ τͰެ։ͯͨ͠ɻޙʹ1ZUIPOKQαΠτͰެ։ɻ w จࣈྻϦςϥϧ w ਖ਼نදݱ w PTQBUIɺHMPCͳͲɺϑΝΠϧ໊ؔ࿈ͷ೔ຊޠରԠ w 1ZUIPO͙Β͍·ͰϦϦʔε͍ͯͨ͠ 6

Slide 7

Slide 7 text

ΨϕʔδίϨΫγϣϯ w ࢀরΧ΢ϯτํࣜͷΨϕʔδίϨΫγϣϯͷΈ w ॥؀ࢀরΛղܾͰ͖ͳ͍ 7 while 1: a = [] b = [a] a.append(b)

Slide 8

Slide 8 text

είʔϓΛωετͰ͖ͳ͍ def spam(): ham = 1 def egg(): print "ham:", ham return egg 8

Slide 9

Slide 9 text

ղܾࡦ def spam(): ham = 1 def egg(ham=ham): print "ham:", ham return egg 9

Slide 10

Slide 10 text

ϩʔΧϧؔ਺ͷ࠶ؼ def spam(): def fact(n): if n < 1: return 1 else: return fact(n-1) return fact 10

Slide 11

Slide 11 text

ϩʔΧϧؔ਺ͷ࠶ؼ def spam(): def fact(n, fact=fact): if n < 1: return 1 else: return fact(n-1) return fact 11

Slide 12

Slide 12 text

ͪͳΈʹ w σϑΥϧτҾ਺ͷධՁ͕ؔ਺ఆٛ࣌ͳͷ͸ɺ ԱଌͰ͕͢ ΩʔϫʔυҾ਺࣮૷࣌ʹΫϩʔδϟ͕ͳ͔͔ͬͨΒ 12 def spam(): defarg = [] def ham(arg=defarg): ... return ham IBN Λݺग़ͨ͠ͱ͖ʹɺ EFGBSHΛࢀরͰ͖ͳ͍

Slide 13

Slide 13 text

1ZUIPOYɺݴޠ෦෼͸ͦΜ ͳʹ͕Μ͹ͬͯͳ͔ͬͨ w    ✦ MBNCEB ✦ ͷจࣈྻϦςϥϧ w    ✦ ಛʹͳ͠ w    ✦ ಛʹͳ͠ w    ✦ ΩʔϫʔυҾ਺ 13 w 1ZUIPO͔Β d ·Ͱͷؒɺจ๏ʹ͸େ͖ͳมԽ͕ͳ͍ w Ϧετ಺แɾΠςϨʔλɾδΣωϨʔλͳͲɺ͓΋͠Ζ໨ͷػೳ͸Ҏ ߱ w    ✦ εϥΠεه๏ʹ4UFQ௥Ճ w    ✦ ύοέʔδ ✦ SBXTUSJOH ✦ BTTFSU

Slide 14

Slide 14 text

ͳʹΛ͕Μ͹ͬͯͨͷ͔ʁ w ඪ४ϥΠϒϥϦ w ϚϧνϓϥοτϑΥʔϜ 14

Slide 15

Slide 15 text

#BUUFSJFT*ODMVEFE w Πϯλʔωοτ͕ൃୡ͍ͯ͠ͳ͍࣌୅ɺඇৗʹॏཁͩͬͨ w ΋ͬͱ΋࣮༻తͳϚϧνϓϥοτϑΥʔϜɾΦʔϧΠϯϫϯͳ ϥΠϒϥϦूͩͬͨ w ςΩετॲཧ w σʔλߏ଄ w )551'514.51ͳͲͷΠϯλʔωοτϓϩτίϧ w υΩϡϝϯτ΋όονϦʂ 15

Slide 16

Slide 16 text

ϚϧνϓϥοτϑΥʔϜ w -JOVY #4%4VO)169"*9.4%048JO.BD 04#F04 w ౰࣌͸·ͩ7.ͳ͠ɻ$16΋Y͡Όͳ͍ w 8JOEPXT༻ͷ࢖͑Δ൚༻044ݴޠ͸͋·Γͳ͔ͬͨ 16

Slide 17

Slide 17 text

࠷ۙͷ1ZUIPO w (VJEPʹΑΔಠࡋ੍͔ΒՉ಄੍΁ w ຖ೥݄ʹϦϦʔε w UZQJOHػೳͷ֦େ͕ଓ͘ w 1&1'MFYJCMFGVODUJPOBOEWBSJBCMF BOOPUBUJPOT w 1&1&YQMJDJU5ZQF"MJBTFT 17

Slide 18

Slide 18 text

͜Ε͔Βͷ1ZUIPO w 1ZUIPO͕ϦϦʔε͞Εͯ΋͏೥ w 5ZQJOHؔ܎Ҏ֎ɺ໨ཱͬͨ1&1͕ͳ͍ 18

Slide 19

Slide 19 text

͜Ε͔Βͷ#BUUFSJFTJODMVEFE͸ʁ w ࠓ͸΋͏1Z1*͋Δ͠ɻɻɻ w ৽نͷඪ४Ϟδϡʔϧ਺͸ݮগ܏޲ w ࠷ۙͷඪ४ن֨͸͍Ζ͍ΖෳࡶͰɺ1ZUIPOίΞͷϝϯ όʔɾ1ZUIPOͷϦϦʔεִؒͰϝϯςφϯε͢Δͷ͸ແ ཧ͕͋Δ 19

Slide 20

Slide 20 text

20 όʔδϣϯผͷ৽نϞδϡʔϧ਺

Slide 21

Slide 21 text

ඪ४Ϟδϡʔϧɾఆ൪ύο έʔδͷ࿝ٺԽ໰୊ w ݱࡏͷඪ४Ϟδϡʔϧͷେ෦෼͸ɺ1ZUIPOY࣌୅ʹ։ൃ ͞Εͨ΋ͷ w ଟ͘ͷఆ൪5IJSEQBSUZQBDLBHF΋1ZUIPO࣌୅ͷ΋ͷ ͕ଟ͍ w େن໛ͳෆཁϞδϡʔϧͷEFQSFDBUF͕ݕ౼த w UZQJOHBTZODඇରԠͳύοέʔδ͸͞ͼ͍͠ 21

Slide 22

Slide 22 text

Զ͕ʮ1ZUIPOྺ൒ੈلʯΛܴ͑ΔͨΊʹ w ݱঢ়ɺ1ZUIPOݴޠ͸੒ख़͓ͯ͠Γɺ͜ͷ··࢖͍ଓ͚ΒΕ Δɻ w ͜Ε͚ͩීٴͨ͠ϓϩάϥϛϯάݴޠ͸ɺࡴͯ͠΋ࢮͳͳ͍ w ιϑτ΢ΤΞ͸ఀ଺Ͱ͖ͳ͍ɻ࢖͍΍͢͞ΛٻΊͯɺਐԽ͠ ଓ͚ͳ͚Ε͹ͳΒͳ͍ w 1ZUIPO͸౗ͨ͠ɻ͔͠͠ୈೋɾୈࡾͷ1ZUIPO͕ඞͣݱΕ ΔͩΖ͏ɻ 22