1. Pythonãšã¯ïŒ
ãŸãåãã«ãPythonãšããèšèªã«ã€ããŠè©³ãã解説ããŸããPythonã¯ãååŠè ã«ãæ±ãããããšãããŠããããã°ã©ãã³ã°èšèªã®1ã€ã§ããã®äœ¿ããããããåºãå©çšãããŠããŸãã
1.1 Pythonã®æŽå²ãšç¹åŸŽ
Pythonã¯ã1989幎ã«ãªã©ã³ãã®ããã°ã©ããŒãã°ã€ãã»ãŽã¡ã³ãããµã ã«ããéçºãããããã°ã©ãã³ã°èšèªã§ãããã®ååã¯ãã€ã®ãªã¹ã®ã³ã¡ãã£ã°ã«ãŒããã¢ã³ãã£ã»ãã€ãœã³ãããåãããŸããã
Pythonã®æã匷åãªç¹åŸŽã®1ã€ã¯ããã®èªã¿ããããšæžããããã§ããã³ãŒãã¯ã·ã³ãã«ã§ãä»ã®ããã°ã©ãã³ã°èšèªãšæ¯èŒããŠãåŠç¿ã容æã§ããããã¯ãã¹ããŒã¹ãŸãã¯ã¿ãã«ããã€ã³ãã³ãïŒåäžãïŒã«ããæ§æãæ¡çšããŠããããã§ãããã«ãã£ãŠã³ãŒãã®ãããã¯ãèŠèŠçã«è¡šçŸããããšãå¯èœã«ãªããŸãã
ãŸããPythonã¯åçåä»ãããµããŒãããŠããŸããããã¯ãå€æ°ã®åã宣èšããã«äœ¿çšã§ãããšããæå³ã§ããããã«ãããããã°ã©ã ã®æè»æ§ãåäžããååŠè ãåŠã³ããããªã£ãŠããŸãã
1.2 Pythonã®å©çšçšé
Pythonã¯ããã®ç°¡æããšæ±çšæ§ãããWebã¢ããªã®éçºããããŒã¿åæãæ©æ¢°åŠç¿ãŸã§å¹ åºãçšéã§äœ¿çšãããŸãã
åŠè¡ç 究ã®äžçã§ã¯ãããŒã¿åæãæ©æ¢°åŠç¿ã®ããã®ã©ã€ãã©ãªïŒnumpyãpandasãscikit-learnãªã©ïŒãå å®ããŠããããPythonã奜ãŸããŸãããŸããWebã¢ããªã±ãŒã·ã§ã³ã®éçºã§ã¯ãPythonã®ãã¬ãŒã ã¯ãŒã¯ã§ããDjangoãFlaskãçšããããããšãå€ãã§ãã
Pythonã¯æè²ã®å Žã§ãå©çšãããããšãå€ããåããŠããã°ã©ãã³ã°ãåŠã¶éã®èšèªãšããŠæšå¥šãããããšãå€ãã§ãããã®çç±ãšããŠãPythonã¯ä»ã®å€ãã®ããã°ã©ãã³ã°èšèªä»¥äžã«’人éããã’ãèªç¶èšèªã«è¿ãæ§é ãæã£ãŠããããã§ãã
2. Pythonã®ç°å¢èšå®
Pythonãå©çšããã«ããããæåã«è¡ãã¹ãã¯ç°å¢èšå®ã§ãããã®ã»ã¯ã·ã§ã³ã§ã¯ãPythonã®ããã°ã©ãã³ã°ç°å¢ã®æ§ç¯ãšããŒãžã§ã³ç®¡çã«ã€ããŠèª¬æããŸãã
2.1 ããã°ã©ãã³ã°ç°å¢ã®æ§ç¯
ããã°ã©ãã³ã°ç°å¢ã«ã¯ããã¹ããšãã£ã¿ãçµ±åéçºç°å¢(IDE: Integrated Development Environment)ãçšããããŸããããã¹ããšãã£ã¿ã¯ãååã®éãããã¹ããç·šéããããã®ãã®ã§ãããããã°ã©ãã³ã°ã³ãŒãã®ç·šéã«ç¹åãããã®ãå€ããããŸããäžæ¹ãIDEã¯ãããã¹ããšãã£ã¿æ©èœã«å ããŠãã³ãŒãã®å®è¡ã»ãããã°ãããŒãžã§ã³ç®¡çãªã©ãéçºã«å¿ èŠãªæ©èœãäžäœåãããã®ã§ããPythonã®éçºã«ã¯ãPyCharmãJupyter Notebookãšãã£ãIDEãããçšããããŸãã
1. Pythonã®å ¬åŒãŠã§ããµã€ã(https://www.python.org/)ããPythonãããŠã³ããŒã 2. ã€ã³ã¹ããŒã©ã®æ瀺ã«åŸããPythonãã€ã³ã¹ããŒã« 3. IDEãéžã³ããã®å ¬åŒãµã€ãããããŠã³ããŒãã»ã€ã³ã¹ããŒã«
ãããã®æé ã«åŸãããšã§ãPythonã®ç°å¢ã¯æŽããŸããåããŠããã°ã©ãã³ã°ãåŠã¶æ¹ã§ãæ°è»œã«å§ããããããšããPythonã®é åã®äžã€ã§ãã
2.2 Pythonã®ããŒãžã§ã³ç®¡ç
Pythonã®ããŒãžã§ã³ç®¡çã¯ãPythonã®è€æ°ã®ããŒãžã§ã³ãäžã€ã®ç°å¢ã§ç®¡çããããã®æ¹æ³ã§ããããã¯ããããžã§ã¯ãã«ãã£ãŠæ±ããããPythonãã©ã€ãã©ãªã®ããŒãžã§ã³ãç°ãªãå Žåãããããã®ãããžã§ã¯ãããšã«é©åãªããŒãžã§ã³ã®Pythonã䜿çšããããã«éèŠã§ãã
pyenvã¯ãPythonã®ããŒãžã§ã³ç®¡çããŒã«ã®äžã€ã§ããããŠã³ããŒãããã€ã³ã¹ããŒã«ãŸã§ã®äžé£ã®æµããã³ãã³ãäžã€ã§è¡ããããããã©ã¯ãã£ã«ã«ã«äœ¿çšããããšãã§ããŸãããŸããvirtualenvãvenvã䜿ãããšã§ãPythonã®ç°å¢ããããžã§ã¯ãããšã«åé¢ããããããã§ç°ãªãããŒãžã§ã³ã®Pythonãããã±ãŒãžã䜿çšããããšãå¯èœã§ãã
Pythonã®ããŒãžã§ã³ç®¡çã«ãããããããã®ãããžã§ã¯ãã«æé©ãªç°å¢ãæŽããããšãã§ããŸããæ¯éããããã®ããŒã«ã䜿ã£ãŠãå¹ççãªéçºç°å¢ãæ§ç¯ããŠã¿ãŸãããã
3. Pythonã®åºæ¬æ§æãšããŒã¿å
æã ãæ¥åžžäŒè©±ã§çšããèšèªãšåæ§ãPythonãç¬èªã®ææ³ãšæ§é ãæã€ããã°ã©ãã³ã°èšèªã§ãããããã®ã«ãŒã«ãåŠã¶ããšã§ãPythonãš”äŒè©±”ããããšãå¯èœã«ãªããŸããããã§ã¯ããã®ç¬¬äžæ©ãšãªãåºæ¬ãªææ³ãšæ§é ãåŠã³ãŸãã
3.1 æ§æã®åºæ¬
Pythonã¯ããã®ä»ã®ããã°ã©ãã³ã°èšèªãšç°ãªããç¹ã«ã³ãŒãã®å¯èªæ§ã«éãã眮ããŠèšèšãããŠããŸããåŸã£ãŠãPythonã®ã³ãŒãã¯æŽçãããŠããŠèªã¿ãããããšããç¹åŸŽããããŸãã
Pythonã®ææ³ã«ã¯ã以äžã®åºæ¬çãªèŠçŽ ãå«ãŸããŸãããããã¯ãã€ã³ãã³ããã³ãã³ãã³ã¡ã³ãã§ãã
Pythonã§ã¯ãã³ãŒããããã¯ã瀺ãããã«ã€ã³ãã³ããè¡ããŸãããŸããã³ãã³ïŒ:ïŒã¯æ°ããã³ãŒããããã¯ãéå§ããããã®éèŠãªèšå·ã§ãããããŠã#ã䜿ã£ãŠã³ãŒãã«ã³ã¡ã³ããè¿œèšããããšãã§ããŸãããããã®èŠçŽ ããPythonã³ãŒããèªã¿ããããã®ã«ããŠããŸãã
3.2 ããŒã¿åãšãã®æäœ
Pythonã§æ±ãæ å ±ã®åœ¢ãæ§è³ªã決å®ããã®ãããŒã¿åã§ããPythonã§ã¯ã以äžã®åºæ¬çãªããŒã¿åãæäŸãããŠããŸãïŒæ°å€åãæåååããªã¹ãåãã¿ãã«åãèŸæžåãããŒã«åã§ãã
ãããã®ããŒã¿åã¯å šãŠãPythonã®äžéšã§ããå èµé¢æ°ã«ããæäœãå¯èœã§ããåå€æãç®è¡æŒç®ãããŒã¿ã®æ ŒçŽãšã¢ã¯ã»ã¹ãªã©ãæ§ã ãªæäœãå®çŸå¯èœã§ãããããé©åã«å©çšããããšã§æãéãã®ããã°ã©ã ãäœãäžããããŸãã
3.3 å€æ°ãšå®æ°
ããã°ã©ãã³ã°ã«ãããŠã¯ãããŒã¿ãä¿æãæäœããããã«å€æ°ãšå®æ°ãçšããããŸããå€æ°ã¯ãããŒã¿ã«ååãã€ãããã®ããŒã¿ãä¿æããããã®ååä»ãã®å Žæã§ããå®æ°ã¯ããã®å€ãå€æŽãããããšã®ãªãå€æ°ãæããŸãã
Pythonã§ã¯ãå€æ°ãäœæããããã«ç¹å¥ãªå®£èšã¯äžèŠã§ãå®è¡æã«å¿ èŠãšãããæã«å€æ°ãäœæãããŸãããããŠãPythonã®å®æ°ã¯ãäžè¬çã«ã¯å šãŠå€§æåã®å€æ°åã䜿ã£ãŠå®£èšãããŸããããããPythonã¯ä»ã®èšèªã«æ¯ã¹ãŠæè»æ§ãããã匷å¶çãªå®æ°ã¯ååšããªããããå šãŠå€§æåã®å€æ°ãçµå±ã¯æžãæãå¯èœãšãªã£ãŠããŸããŸãã
4. å¶åŸ¡ãããŒãšã«ãŒã
ããã°ã©ãã³ã°ã«ãããå¶åŸ¡ãããŒãšã«ãŒãã«ã€ããŠåŠã³ãŸãããããããã¯ããã°ã©ã ã®å®è¡é åºãå¶åŸ¡ããããã®éèŠãªæŠå¿µã§ãå¹ççãªã³ãŒããæžãäžã§æ¬ ããããšã®ã§ããªãèŠçŽ ã§ãã
4.1 æ¡ä»¶åå²
Pythonã®ãæ¡ä»¶åå²ãã¯ãããã°ã©ã ã®æµããæ¡ä»¶ãããšã«å€ããããšãã§ããæ©èœã§ãããif-elseãã¹ããŒãã¡ã³ãã䜿ã£ãŠãç¹å®ã®æ¡ä»¶ãçïŒTrueïŒã§ããã°äžé£ã®æäœãè¡ããããã§ãªããã°å¥ã®æäœãè¡ããšããããšãã§ããŸãã
if æ¡ä»¶åŒ: æ¡ä»¶åŒãçã§ããæã«å®è¡ããåœä»€ else: æ¡ä»¶åŒãåœã§ããæã«å®è¡ããåœä»€
ããšãã°ããifãæã䜿çšããŠãããæ°å€ã10以äžãã©ããã確èªããããšãã§ããŸãããŸããäœãå®æ°ãå®çŸ©ããŠãããŸãããã
num = 12 if num >= 10: print("æ°å€ã¯10以äžã§ãã") else: print("æ°å€ã¯10æªæºã§ãã")
äžã®ããã°ã©ã ã§ã¯ãnumã10以äžã§ããã°ãæ°å€ã¯10以äžã§ããããšè¡šç€ºããŸãã10æªæºã§ããã°ãæ°å€ã¯10æªæºã§ããããšè¡šç€ºããŸãããããã£ãæ¡ä»¶ã«åºã¥ãåå²ã«ãããããã°ã©ã ã¯æè»ã«æ¯ãèãããšãã§ããŸãã
4.2 ã«ãŒãåŠç
ã«ãŒããšã¯ããã°ã©ã å ã®ç¹å®ã®ã³ãŒããç¹°ãè¿ãå®è¡ããããšãæããŸãããforãããwhileãã®æ§æã䜿ã£ãŠã«ãŒããå®çŸããããšãã§ããŸãããŸãã¯ããforãã«ãŒãã«ã€ããŠèŠãŠãããŸãããã
for å€æ° in ã·ãŒã±ã³ã¹: ç¹°ãè¿ãå®è¡ããåœä»€
ããšãã°ã1ãã10ãŸã§ã®æ°å€ãé ã«è¡šç€ºããããã°ã©ã ããforãã«ãŒãã§å®è£ ããããšãã§ããŸãã
for i in range(1, 11): print(i)
äžèšã®ããã°ã©ã ãå®è¡ãããšãã1ãããã10ããŸã§ã®æ°å€ãé ã«è¡šç€ºãããŸãã次ã«ããwhileãã«ãŒãã«ã€ããŠèŠãŠãããŸããããwhileã«ãŒãã§ã¯ãæ¡ä»¶åŒãçã§ããéããäžã®åœä»€ãç¹°ãè¿ãå®è¡ããŸãã
while æ¡ä»¶åŒ: ç¹°ãè¿ãå®è¡ããåœä»€
äŸãã°ãããæ°å€ã0ã«ãªããŸã§2ã§å²ãç¶ããããã°ã©ã ã¯æ¬¡ã®ããã«æžããŸãã
num = 32 while num != 0: print(num) num = num // 2
äžèšã®ããã°ã©ã ãå®è¡ãããšãã32ãããã1ããŸã§ã®æ°å€ãååã«ãªããªãã衚瀺ãããŸããå¶åŸ¡ãããŒãšã«ãŒãã¯ãããããããã°ã©ã ã§äœ¿çšãããããããç解ã䜿ãããªãããšã¯ãPythonããã°ã©ãã³ã°ã®åºæ¬ãåŠã¶äžã§äžå¯æ¬ ã§ãã
5. é¢æ°ãšã¯ã©ã¹
ãã®ç« ã§ã¯ãPythonã®éèŠãªæŠå¿µã§ããé¢æ°ãšã¯ã©ã¹ã«ã€ããŠåŠã³ãŸãããããã®æŠå¿µã¯ããã°ã©ãã³ã°ã«ããããœãããŠã§ã¢èšèšã®åºæ¬ãšãªããã®ã§ãã³ãŒãã®åå©çšæ§ãšå¯èªæ§ãé«ããããã«çšããããŸãã
5.1 é¢æ°ã®å®çŸ©ãšäœ¿çšæ¹æ³
é¢æ°ãšã¯ãç¹å®ã®ç®çãæããããã®ã³ãŒãã®ãŸãšãŸãã§ãäžé£ã®åœä»€ãå«ã¿ãŸããé¢æ°ã¯ãããããããã°ã©ãã³ã°èšèªã®äžæ žçãªèŠçŽ ã§ãããPythonãäŸå€ã§ã¯ãããŸããã
Pythonã§é¢æ°ãå®çŸ©ããããã«ãdef
ããŒã¯ãŒãã䜿çšããŸãããã®åŸã«é¢æ°åãšã«ãã³å
ã«åŒæ°ãæå®ããã³ãã³(:)ã®åŸã§æ°ããè¡ãéå§ããŠã€ã³ãã³ãããŸãã
def hello(name):
print("Hello, " + name + "!")
äžèšã®äŸã§ã¯ãhello
ãšããååã®é¢æ°ãå®çŸ©ããŠããŠãname
ãšããåŒæ°ãåãããã®åŒæ°ãçšããŠæšæ¶ã¡ãã»ãŒãžãåºåããŸãã
é¢æ°ãåŒã³åºãããã«ã¯ãé¢æ°åã®åŸãã«ã«ãã³ãä»ããã«ãã³å ã«å¿ èŠãªåŒæ°ãèšè¿°ããŸããäŸãã°ãäžèšã®é¢æ°ãåŒã³åºãã«ã¯ä»¥äžã®ããã«ããŸãã
hello("Python")
ããã¯ã”Hello, Python!”ãšåºåããŸãã
# output
Hello, Python!
5.2 ã¯ã©ã¹ã®å°å ¥ãšãªããžã§ã¯ãæå
次ã«ãã¯ã©ã¹ãšããæŠå¿µã«ã€ããŠåŠã³ãŸããããã¯ã©ã¹ã¯ããªããžã§ã¯ãæåããã°ã©ãã³ã°ã®äžå¿çãªéšåã§ãçŸå®äžçã®ç©äºãæŠå¿µãã³ãŒãå ã§è¡šçŸããããã®æ çµã¿ãæäŸããŸãã
Pythonã§ã¯ãclass
ããŒã¯ãŒãã䜿çšããŠã¯ã©ã¹ãå®çŸ©ããŸããããšãã°ã人ãè¡šãã¯ã©ã¹ã以äžã®ããã«äœæããŸãã
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
print("Hello, my name is " + self.name + " and I am " + str(self.age) + " years old.")
äžèšã®äŸã§Person
ã¯ã©ã¹ã¯ãname
ãšage
ãšããå±æ§ïŒãããã¯ããŒã¿ïŒãšãgreet
ãšããã¡ãœããïŒãããã¯æ¯ãèãïŒãå®çŸ©ããŠããŸãã
ãã®ã¯ã©ã¹ã䜿çšããŠæ°ãããªããžã§ã¯ããäœãããã«ã¯ãã¯ã©ã¹åã®åŸãã«ã«ãã³ãä»ããå¿ èŠãªåŒæ°ãã«ãã³å ã«èšè¿°ããŸãã
p = Person("Python", 30)
p.greet()
ããã¯ã”Hello, my name is Python and I am 30 years old.”ãšåºåããŸãã
åè¿°ã®é¢æ°ã«ç¶ããŠãã¯ã©ã¹ãšãªããžã§ã¯ãã®ç解ã¯Pythonããã°ã©ããŒãšããŠã®æè¡ã磚ãã«ãããäžå¯æ¬ ãªã¹ãã«ãšãªããŸãã
6. äŸå€åŠç
ã³ãŒããæžãéã«ã¯ããšã©ãŒãåé¡ãçºçããå¯èœæ§ãåžžã«èããå¿ èŠããããŸããåé¡ãçºçãããšãã«ããã°ã©ã ãé©åã«å¯Ÿå¿ã§ããããã«ããã®ãäŸå€åŠçã§ãã
6.1 äœæ äŸå€åŠçãå¿ èŠãªã®ã
äŸå€åŠçãå¿ èŠãªçç±ã¯ãåºæ¬çã«ã¯äºã€ãããŸãã
äžã€ã¯ãäºæããªãåé¡ãçºçãããšãã«ããã°ã©ã ãçªç¶åæ¢ããŠããŸãããšãé¿ããããã§ããããšãã°ããã¡ã€ã«ã®èªã¿æžããè¡ã£ãŠããæäžã«ãã¡ã€ã«ãèŠã€ãããªããã¹ãã¬ãŒãžããã£ã±ãã§æžã蟌ã¿ãã§ããªããªã©ã®åé¡ãçºçãããã®åé¡ããã³ããªã³ã°ãããŠããªããšãããã°ã©ã ããã以äžé²ãŸãããšã©ãŒã§åæ¢ããŠããŸããŸãã
äºã€ç®ã¯ãå°é£ãªç¶æ³ãé©åã«ç®¡çããããã³ã³ãããŒã«å¯èœãªç¶æ ã«ä¿ã€ããã§ããäŸå€åŠçãé©åã«è¡ãã°ãåé¡ãçãããšãã«ã©ã®ãããªå¯ŸçããšããããŸãã¯ãŠãŒã¶ãŒã«äœãéç¥ããããèªç±ã«ã³ã³ãããŒã«ã§ããŸãã
ããã«ããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã¯åäžãããããã°éçšãçããªããŸãã
6.2 try-exceptã䜿ã£ãäŸå€åŠç
Pythonã«ãããŠã¯ãäŸå€åŠçã¯äž»ã«try-exceptæ§æã䜿ã£ãŠè¡ããŸãããã®æ§æã䜿ããšãäŸå€ãçºçããå¯èœæ§ã®ãããå±éºãªãã³ãŒããå®è¡ãããã®äŸå€ããã£ããããŠåŠçãè¡ãããšãã§ããŸãã
try: risky_code() except Exception as e: handle_error(e)
äžèšã¯ãtry-exceptã䜿ã£ãäŸå€åŠçã®åºæ¬çãªåœ¢ã§ããrisky_codeãããšã©ãŒãåŒãèµ·ãããšããããExceptionãšããŠæããããŠãhandle_errorããåŒã³åºãããŸãããã®ãšããeãšããå€æ°ã«ãšã©ãŒã®è©³çŽ°æ å ±ãæ ŒçŽãããŸãã
ãã®åœ¢åŒãçšããããšã§ãããŸããŸãªã¿ã€ãã®ãšã©ãŒã«å¯ŸããŠå ·äœçãªå¯ŸåŠãè¡ãããšãå¯èœã«ãªããŸãã
7. Pythonã§ã®ãã¡ã€ã«æäœãšIO
ãã®ç¯ã§ã¯ãPythonã䜿çšãããã¡ã€ã«æäœãå ¥åºåã«ã€ããŠãå ·äœäŸã亀ããŠè§£èª¬ããŸãããããã®ç¥èã身ã«ã€ããããšã§ãPythonã¹ã¯ãªããããæ§ã ãªçš®é¡ã®ããŒã¿ãæ±ãããšãå¯èœã«ãªããŸãã
7.1 ãã¡ã€ã«ã®èªã¿æžã
Pythonã§ã¯ãããã¹ããã¡ã€ã«ããã€ããªãã¡ã€ã«çãæ§ã ãªçš®é¡ã®ãã¡ã€ã«ã®èªã¿æžããã§ããŸãããããã®æäœã¯ãåºæ¬çã«open()é¢æ°ãçšããŠè¡ããŸãããŸãã¯ãã¡ã€ã«ã®èªã¿èŸŒã¿ããèŠãŠã¿ãŸãããã
以äžã®ã³ãŒãã¯ãopené¢æ°ã§æå®ãããã¡ã€ã«ãéããŠãã«ãŒãã䜿ã£ãŠ1è¡ãã€èªã¿èŸŒãã§è¡šç€ºãããã®ã§ãã
with open('filename.txt', 'r') as f: for line in f: print(line)
次ã«ããã¡ã€ã«ã®æžã蟌ã¿ã«ã€ããŠèŠãŠãããŸãããããããopené¢æ°ãå©çšããŠè¡ããŸããããã®æã«ã¯ç¬¬äºåŒæ°ã«’w’ãæå®ããŸãã’w’ã¯write(æžã蟌ã¿)ãè¡šããŠããŸãã以äžã¯ããã¡ã€ã«ã«1è¡æžã蟌ãäŸã§ãã
with open('filename.txt', 'w') as f: f.write("Hello, Python!")
ãã®ããã«ãPythonã§ã¯ããã€ãã®é¢æ°ãšã·ã³ãã«ãªææ³ãçšããŠãããŸããŸãªãã¡ã€ã«åŠçãå¯èœã§ãã
7.2 Pythonã®æšæºå ¥åºå
Pythonã§ã¯ãç»é¢ãžã®åºåãããŒããŒãããã®å ¥åãªã©ãæšæºå ¥åºåã®åŠçã容æã«è¡ããŸããæšæºåºåã«ã€ããŠã¯ãprint()é¢æ°ãéåžžçšããŸããããã¯ãåŒæ°ãšããŠäžããããå€ããã®ãŸãŸåºåããŸããäŸãã°ã以äžã®ã³ãŒã㯔Hello, Python!”ãšããæååãåºåããŸãã
print("Hello, Python!")
äžæ¹ãæšæºå ¥åã«ã€ããŠã¯input()é¢æ°ã䜿ãããŸãããã®é¢æ°ã¯ããŠãŒã¶ãŒãäœããå ¥åããã®ãåŸ ã¡ããã®çµæãæååãšããŠè¿ããŸãã
user_input = input("Please enter something:") print("You entered: " + user_input)
ãã®ããã«ãPythonã®æšæºå ¥åºåã¯ãã·ã³ãã«ãªé¢æ°ãçšããŠç°¡åã«æäœã§ããŸããããã«ããããŠãŒã¶ãŒãšã®å¯Ÿè©±çãªæäœãå¯èœã«ãªããŸãã
8. Pythonã§ã®ã©ã€ãã©ãªå©çš
Pythonã¯ãã®äŸ¿å©ãããå€ãã®çšéã§æãããŠããŸããããã®äžã§ãç¹ã«åªããŠããéšåã¯ã©ã€ãã©ãªã®è±å¯ãã§ããã©ã€ãã©ãªãšã¯ããã§ã«èª°ããäœã£ãŠããã䟿å©ãªããŸãæ©èœãšèããŠãã ããããããé©åã«äœ¿ãããšã§ãæ§ã ãªåŠçãç°¡åã«ãçãã³ãŒãã§å®çŸããããšãå¯èœã§ããæ¬ã»ã¯ã·ã§ã³ã§ã¯ã©ã€ãã©ãªã®ã€ã³ã¹ããŒã«ãšã€ã³ããŒãã®æ¹æ³ããããŠä»£è¡šçãªã©ã€ãã©ãªã®äžéšã玹ä»ããŸãã
8.1 ã©ã€ãã©ãªã®ã€ã³ã¹ããŒã«ãšã€ã³ããŒã
Pythonã®ã©ã€ãã©ãªã®ã€ã³ã¹ããŒã«ã¯éåžžã«ç°¡åã§ãããŸãã¯Pythonã®ããã±ãŒãžç®¡çããŒã«ã§ããpipã䜿ãããšã§ã©ã€ãã©ãªãã€ã³ã¹ããŒã«ããŸããã³ãã³ãããã³ãããã¿ãŒããã«ãéããäŸãã°NumPyãšããæ°å€èšç®ã©ã€ãã©ãªãã€ã³ã¹ããŒã«ãããå Žåã¯ä»¥äžã®ããã«å ¥åããŸãïŒ
pip install numpy
ããã ãã§NumPyãšããã©ã€ãã©ãªãã€ã³ã¹ããŒã«ã§ããŸããäžèšã³ãã³ããå®è¡ãããšãPythonãå©çšå¯èœãªãã¹ãŠã®ç°å¢ã§NumPyãå©çšå¯èœã«ãªããŸããããã«ç¹å®ã®ç°å¢ã«ã®ã¿ã©ã€ãã©ãªãã€ã³ã¹ããŒã«ãããå Žåã«ã¯Pythonã®ä»®æ³ç°å¢ãšçµã¿åãããããšãäžè¬çã§ãã
次ã«ã€ã³ã¹ããŒã«ããã©ã€ãã©ãªãã©ã®ããã«ã³ãŒãããåŒã³åºãããããã¯ã€ã³ããŒããšããæŠå¿µã䜿ããŸãã以äžã®ãããªæžãæ¹ãããããšã§ãèªåã®ã³ãŒãã®äžã§NumPyã䜿ãããšãã§ããŸãïŒ
import numpy
以äžãã©ã€ãã©ãªã®åºæ¬çãªã€ã³ã¹ããŒã«ãšã€ã³ããŒãã®æ¹æ³ã§ãã
8.2 代衚çãªPythonã©ã€ãã©ãªãšãã®äœ¿çšäŸ
ããããã¯ããã€ãã®ä»£è¡šçãªPythonã©ã€ãã©ãªã玹ä»ããŸããä»å玹ä»ããã©ã€ãã©ãªã¯NumPyãPandasãMatplotlibãbeautifulsoup4ãrequestsã®5ã€ã§ãã
NumPyã¯ãæ°å€èšç®ãé«éã«ãã€å¹ççã«å®è¡ããããã®ã©ã€ãã©ãªã§ããè¡åã®æŒç®ãªã©è€éãªæ°åŠåŠçãæ軜ã«è¡ãããšãå¯èœã§ãããŒã¿åæãç§åŠèšç®ãªã©ã«ããå©çšãããŸãã
Pandasã¯ãããŒã¿åæãæ¯æŽããæ©èœãæäŸããã©ã€ãã©ãªã§ãã
import pandas as pd
data = pd.read_csv('sample.csv')
äžèšã®ããã«ãããšãCSVãã¡ã€ã«ãèªã¿èŸŒãã§ããŒã¿åæãå§ããããšãã§ããŸãã
Matplotlibã¯ãã°ã©ãçæãããŒã¿ã®å¯èŠåãè¡ãããã®ã©ã€ãã©ãªã§ãPandasãšäœµããŠäœ¿ãããããšãå€ãã§ãã
Beautifulsoup4ã¯ããŠã§ãã¹ã¯ã¬ã€ãã³ã°ã«äœ¿ãããã©ã€ãã©ãªã§ããHTMLã®è§£æã容æã«è¡ãããšãã§ããŸãã
Requestsã¯ãPythonã§HTTPãªã¯ãšã¹ããéãããã®ã©ã€ãã©ãªã§ãããŠã§ããµã€ãã®æ å ±ãååŸããããAPIã«ãªã¯ãšã¹ããéã£ããããã®ã«äŸ¿å©ã§ãã
ããã§çŽ¹ä»ããã©ã€ãã©ãªã¯ã»ãã®äžéšã«éããŸããããããããç解ã䜿ãããªããããã«ãªãã°ãPythonã䜿ã£ãéçºããã£ãšæ¥œã«ãªããŸãã
9. å®è·µïŒPythonã䜿ã£ããããžã§ã¯ã
ä»ãŸã§ã®ã»ã¯ã·ã§ã³ã§åŠãã Pythonã®ç¥èã掻ãããŠãå®éã«ãããžã§ã¯ããäœæããŠã¿ãŸããããä»åã¯ã·ã³ãã«ãªWebã¹ã¯ã¬ã€ãã³ã°ã®ããã°ã©ã ãäœæããŸãã
9.1 ãããžã§ã¯ãã®èšèš
ãŸãã¯ãããžã§ã¯ãã®èšèšããå§ããŸããèšèšãšã¯ãããã°ã©ã ãã©ã®ãããªæ©èœãæã€ã¹ãããã©ã®ããã«å®è£ ããããèããäœæ¥ã§ããä»åã®Webã¹ã¯ã¬ã€ãã³ã°ããã°ã©ã ã§ã¯ãPythonã®ã©ã€ãã©ãªBeautifulSoupã䜿çšããŸããBeautifulSoupã¯HTMLãXMLã®ããŒã¹ãç°¡åã«è¡ãããšãã§ããã©ã€ãã©ãªã§ãã
ãŸããä»åã®ããã°ã©ã ã®ç®çã¯ç¹å®ã®ãŠã§ããµã€ãããæ å ±ãååŸããããšã§ããäœãååŸãããã«ãã£ãŠèšèšãå€ããããããŸãæåã«æ±ºå®ããŸãã
9.2 ã³ãŒãã£ã³ã°ãšãã¹ã
ç¶ããŠãå®éã«ããã°ã©ã ãæžããŠãããŸãããã®æ®µéãã³ãŒãã£ã³ã°ã§ãããŸãã¯å¿ èŠãªã©ã€ãã©ãªãã€ã³ããŒãããããšããå§ããŸããBeautifulSoupã¯HTMLãæ±ãããã«ã¯æ¬ ãããªãã©ã€ãã©ãªã§ãã
import requests from bs4 import BeautifulSoup
次ã«ãã¹ã¯ã¬ã€ãã³ã°ã®å¯Ÿè±¡ãšãªãURLãèšå®ããŸãããã®åŸãrequestsã䜿ã£ãŠãŠã§ãããŒãžããHTMLãååŸããŸããBeautifulSoupãçšããŠHTMLãããŒã¹ããŸãã
äœæããããã°ã©ã ã¯ãã¹ããè¡ããããŸãåäœããããæ€èšŒããŸãã
9.3 ãããžã§ã¯ãã®çµæãšæ¯ãè¿ã
ãã¹ããããŸãè¡ã£ããããããžã§ã¯ãã¯å®æã§ããããã§Pythonã䜿ã£ãå ·äœçãªãããžã§ã¯ãã®å®æã§ãã
æåŸã«æ¯ãè¿ããè¡ããŸãããããžã§ã¯ããéããŠPythonã®ã©ã®éšåãç解ã§ããããã©ã®éšåãé£ããã£ãããèããŠã¿ãŸãããããŸãã次ã«ã©ã®ãããªãããžã§ã¯ããäœæããã°ããã«ã¹ãã«ã¢ããã§ããããèããã®ãè¯ãã§ãããã
10. PythonåŠç¿ã®æ¬¡ã®ã¹ããã
ãããŸã§ã®ã»ã¯ã·ã§ã³ã§Pythonã®åºæ¬çãªç¥èãšäœ¿ãæ¹ãåŠãã§ããŸãããããããããã°ã©ãã³ã°ã®åŠç¿ã¯ããã§çµããã§ã¯ãããŸãããPythonã䜿ã£ãéçºã¯ãWebéçºãããŒã¿åæãAIéçºãªã©å€å²ã«ããããŸãããããŠãããããå¿çšé åãæ¢æ±ããèªèº«ã®ã¹ãã«ã»ãããæ¡åŒµããããšãæ±ããããŠããŸãã
10.1 Pythonã®å¿çšé å
Pythonã«ã¯å€æ§ã§åŒ·åãªã©ã€ãã©ãªãæã£ãŠããããããã䜿ãããšã§æ§ã ãªå¿çšé åã§æŽ»èºã§ããŸããWebéçºã§ã¯ãDjangoãFlaskãšãããã¬ãŒã ã¯ãŒã¯ã䜿ãããšã§ãçæéã§å ç¢ãªWebã¢ããªã±ãŒã·ã§ã³ãäœæããããšãå¯èœã§ãã
ããŒã¿åæãæ©æ¢°åŠç¿ãªã©ã®é åã§ã¯ãNumpyãPandasãScikit-learnãšãã£ãã©ã€ãã©ãªãçšããããšã§ã倧éã®ããŒã¿ãå¹ççã«åŠçããäºæž¬ã¢ãã«ãäœæããããå¯èŠåããããšãã§ããŸãã
èªååãã¹ã¯ã¬ã€ãã³ã°ã®é åã§ã¯ãPythonã¯ãã®ç°¡æœããšåŒ·åãªæšæºã©ã€ãã©ãªã掻çšããŠãããŸããŸãªèªååã¹ã¯ãªãããäœæããŸãããBeautiful Soupããªã©ã®ã©ã€ãã©ãªã䜿ã£ãŠãŠã§ããµã€ãããæ å ±ãååŸããã¹ã¯ã¬ã€ãã³ã°ãå€ãè¡ãããŠããŸãã
10.2 ãããªãåŠç¿ãªãœãŒã¹
Pythonã®ç¥èãæ·±ããããã«ã¯å€ãã®ãªãœãŒã¹ããããŸãããªã³ã©ã€ã³ã®æè²ãã©ãããã©ãŒã ãäŸãã°ãedXããCourseraããUdemyããªã©ã¯ãPythonã䜿çšããéçºãããŒã¿åæãæ©æ¢°åŠç¿ãªã©ã®ã³ãŒã¹ãæäŸããŠããŸãããŸããPythonã®éçºå ãæäŸããå ¬åŒããã¥ã¡ã³ãã¯ãã©ã€ãã©ãªã®è©³çŽ°æ å ±ã䜿ãæ¹ãåŠã¶ã®ã«éåžžã«äŸ¿å©ã§ãã
æžç±ã«ããåŠç¿ãäžã€ã®æ段ã§ããPythonã¯ãã¯ããã¯ãããLearning Pythonãçã®æžç±ã¯ãPythonã®ç¥èãåºããäžã§åœ¹ç«ã¡ãŸãããŸãããããžã§ã¯ãããŒã¹ã§PythonãåŠã¶ããšã®ã§ããã³ãŒãã¢ã«ãããŒãªã©ããããŸãã
è²ã ãªãªãœãŒã¹ãè©Šããèªåã®åŠç¿ã¹ã¿ã€ã«ã«åã£ããã®ãèŠã€ããããšãéèŠã§ãããããããåŒãç¶ããPythonã§ã®ã³ãŒãã£ã³ã°ã楜ããã§ãã ããã