͋ͷ͜Ζͷ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.ͳ͠ɻ$16Y͡Όͳ͍
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 ଟ͘ͷఆ൪5IJSEQBSUZQBDLBHF1ZUIPO࣌ͷͷ
͕ଟ͍
w େنͳෆཁϞδϡʔϧͷEFQSFDBUF͕ݕ౼த
w UZQJOHBTZODඇରԠͳύοέʔδ͞ͼ͍͠
21
Slide 22
Slide 22 text
Զ͕ʮ1ZUIPOྺੈلʯΛܴ͑ΔͨΊʹ
w ݱঢ়ɺ1ZUIPOݴޠख़͓ͯ͠Γɺ͜ͷ··͍ଓ͚ΒΕ
Δɻ
w ͜Ε͚ͩීٴͨ͠ϓϩάϥϛϯάݴޠɺࡴͯ͠ࢮͳͳ͍
w ιϑτΤΞఀͰ͖ͳ͍ɻ͍͢͞ΛٻΊͯɺਐԽ͠
ଓ͚ͳ͚ΕͳΒͳ͍
w 1ZUIPOͨ͠ɻ͔͠͠ୈೋɾୈࡾͷ1ZUIPO͕ඞͣݱΕ
ΔͩΖ͏ɻ
22