Pythonã§ã³ãŒããæžããŠããŠãæ³å®ããã¢ãŠãããããšéãçµæãè¿ã£ãŠããâŠãªãïŒããšé ãæ±ããçµéšã¯ãããŸãããïŒå€ãã®äººãæåã«åãå¯ŸåŠæ³ã¯ãã³ãŒãã®ãã¡ãã¡ã« print() æãä»èŸŒãã§å®è¡ããæ¹æ³ã§ããããã§ãã確èªããã倿°ãå¢ããŠãããšãã³ãŒãäžã print ã ããã«ãªã£ãŠé¢åãããââãããªæ©ã¿ãäžçºã§è§£æ±ºããŠãããã®ããããã¬ãŒã§ãâš
ãããã¬ãŒã䜿ãã°ãããã°ã©ã ã1è¡ãã€å®è¡ããªããããã®ç¬éã®å€æ°ã®å€ã確èªã§ããŸãããã©ãã§æå³ããªãå€ãå ¥ã£ãã®ãããã©ã®åå²ã«å ¥ã£ãã®ãããæã«åãããã«ãããã®ã§ããã°ã®åå ç¹å®ãåçã«éããªããŸãð
ãããã¬ãŒã®äžæ žãšãªãä»çµã¿ããã¬ãŒã¯ãã€ã³ãã§ããã³ãŒãã®å¥œããªäœçœ®ã«ãããã§äžæåæ¢ããŠããšããããŒã«ãŒã眮ããŠãããšãããã°ã©ã ãå®è¡ãããšãã«ãã®è¡ã§æ¢ãŸãã察話çã«å€æ°ã®äžèº«ã確èªãããã1è¡ãã€ç¶ããå®è¡ãããã§ããŸãã
äŸãã°ãåå代éã®åèšã«éæãè¶³ããŠãã©ãŒãããããŠè¡šç€ºããã³ãŒãã§ãã°ãèµ·ãããšããæªãã颿°ã®æåã«ãã¬ãŒã¯ãã€ã³ãã眮ããŠããã°ãã颿°ã«å ¥ãçŽåã®å€æ°ã®ç¶æ ããšãåŠçåŸã®ç¶æ ããé çªã«èгå¯ã§ããŸããprintæãä»èŸŒã¿çŽããŠäœåºŠãå®è¡ããæéãããŸãããšäžèŠã«ãªããŸãð¡
Python 3.7以éã§ã¯ã远å ã®ã€ã³ã¹ããŒã«äžèŠã§äœ¿ããçµã¿èŸŒã¿é¢æ° breakpoint() ãçšæãããŠããŸããæ¢ãããè¡ã«1è¡æžãè¶³ãã ãã§ããããã°ã»ãã·ã§ã³ãéå§ãããæè»œããé
åã§ãã
def main():
    handbag = 5000
    shoes = 6000
    breakpoint()  # â ããã§äžæåæ¢
    total = handbag + shoes
    print(total)
ãã®ã¹ã¯ãªãããæ®éã« python code.py ã§å®è¡ãããšãbreakpoint() ã®è¡ã§åŠçãæ¢ãŸãã(Pdb) ãšããããã³ããã衚瀺ãããŸãããããã察話çã«ã³ãã³ããæãŠãããã«ãªããŸãã
å€ãPythonã䜿ã£ãŠããå Žåã¯ãbreakpoint() ã®ä»£ããã«æ¬¡ã®ããã«æžããŸãã
import pdb; pdb.set_trace()
p 倿°å â æå®ãã倿°ã®çŸåšã®å€ã衚瀺nïŒnextïŒâ 次ã®è¡ãžé²ãïŒé¢æ°ã®äžã«ã¯å
¥ããªãïŒsïŒstepïŒâ 次ã®è¡ãžé²ãïŒé¢æ°ãããã°äžã«å
¥ãïŒcïŒcontinueïŒâ 次ã®ãã¬ãŒã¯ãã€ã³ããŸã§äžæ°ã«å®è¡qïŒquitïŒâ ãããã°ãçµäºããäŸãã° p handbag ãšæãŠã°ããã®ç¬éã® handbag ã®å€ïŒãã®äŸãªã 5000ïŒã衚瀺ãããŸãããŸã å®è¡ãããŠããªãè¡ã§ p total ãšæãŠã°ãNameErrorããšè¿ã£ãŠããã®ã§ã倿°ããã€å®çŸ©ãããããäžç®çç¶ã§ãð
breakpoint() ã¯ãœãŒã¹ã³ãŒãã«æžã蟌ãã¿ã€ãã®ãããã¬ãŒãªã®ã§ããããã°ãçµãã£ããå¿
ãåé€ããŸããããæ®ãããŸãŸã«ãããšãæ¯åãã®è¡ã§æ¢ãŸã£ãŠããŸããæ¬çªç°å¢ãªã©ã§æå³ããªãåäœã®åå ã«ãªããŸãã
ç¡æã§äœ¿ãããšãã£ã¿ãŒ Visual Studio CodeïŒVS CodeïŒã«ã¯ã匷åãªGUIãããã¬ãŒãæšæºã§çµã¿èŸŒãŸããŠããŸããã³ãŒãã倿Žããã«äœ¿ããã®ã倧ããªã¡ãªããã§ãâš
å·Šãµã€ãããŒã®æ¡åŒµæ©èœã¢ã€ã³ã³ïŒåè§ããããã¯åã®ããŒã¯ïŒãã¯ãªãã¯ããæ€çŽ¢çªã«ãPythonããšå ¥åãMicrosoftå ¬åŒã®Pythonæ¡åŒµæ©èœãã€ã³ã¹ããŒã«ããã ãã§ããããã¬ãŒã䜿ããããã«ãªããŸãã
æ¢ãããè¡ã®å·Šç«¯ïŒè¡çªå·ã®å·ŠåŽïŒãã¯ãªãã¯ãããšãèµ€ãäžžã衚瀺ãããŸããããããã¬ãŒã¯ãã€ã³ãã§ããè€æ°ã®è¡ã«çœ®ãããšãèªç±èªåšã§ãã³ãŒãèªäœã«ã¯äžåæãå ããŸããð¯
å·Šãµã€ãããŒã®ãå®è¡ãšãããã°ãã¢ã€ã³ã³ïŒè«ããŒã¯ä»ãã®äžè§ïŒãã¯ãªã㯠â ãRun and Debugããã¿ã³ãæŒããæ§æãšããŠãPython Fileããéžæããã ããããã°ã©ã ãå®è¡ãããæåã®ãã¬ãŒã¯ãã€ã³ãã§èªåçã«åæ¢ããŸãã
VS Codeã®ãããã¬ãŒãç¹ã«äŸ¿å©ãªã®ã¯ãç»é¢å·ŠåŽã®ã倿°ãããã«ã«ããã®æç¹ã§å®çŸ©ãããŠãããã¹ãŠã®å€æ°ãšãã®å€ãèªå衚瀺ãããããšãp 倿°å ãšæã€å¿
èŠãããããŸããã倿°ã10åãã£ãŠã20åãã£ãŠããã²ãšç®ã§ã¬ããšå€ã確èªã§ããŸãð
ããŒããŒãã·ã§ãŒãã«ãããå²ãåœãŠãããŠããã®ã§ãæ £ããŠããã°æãããŠã¹ããé¢ããã«é«éãããã°ã§ããããã«ãªããŸãã
ã©ã¡ããäžé·äžçããããå Žé¢ã«ãã£ãŠäœ¿ãåããã®ãããããã§ãã
breakpoint()ïŒJupyter NotebookãGoogle Colabããªã¢ãŒããµãŒããŒãªã©GUIãšãã£ã¿ãŒã䜿ããªãç°å¢ã§æŽ»èºã1è¡è¿œèšããã ãã§åãããŒã¿ããªãã£ã®é«ããé
åãPyCharmã®ãããªçµ±åéçºç°å¢ã«ãåæ§ã®GUIãããã¬ãŒãæèŒãããŠããã®ã§ãèªåãæ®æ®µäœ¿ã£ãŠãããšãã£ã¿ãŒã®ãããã¬ãŒãèŠããŠããã®ãäžçªå¹ççã§ãð¡
ãããã¬ãŒã®äœ¿ãæ¹ãäœç³»çã«åŠãã ããå¿«é©ãªéçºç°å¢ãæŽããããããšãã³ãŒãã£ã³ã°ã®æ¥œãããäœåã«ãå¢ããŸãâš
ãããã°ããããã³ãŒãèšèšãããã®ã³ã°ã»äŸå€åŠçã®ãã¹ããã©ã¯ãã£ã¹ã90é ç®ã«åçž®ãããŠããŸããäžçŽè ãžã®ã¹ãããã¢ããã«æé©ã§ãã
åãã³ãã»ãã¹ãã»äŸå€èšèšãçµã¿åãããŠããããããã°ãå ¥ãã«ããå ç¢ãªPythonã³ãŒããæžãæ¹æ³ã培åºè§£èª¬ã
Pythonã®åºæ¬æ§æãæšæºã©ã€ãã©ãªãç¶²çŸ
ãpdb ã¢ãžã¥ãŒã«ã®è©³ãã仿§ã確èªããããšãã«ãé Œããå®çªæžã§ãã
ãããã°ã¯ã¿ã€ãã³ã°éãå€ãäœæ¥ãæéµæã®è¯ãããŒããŒãããããšãé·æéã®éäžåã倧ããå€ãããŸãã
ã³ãŒãã»å€æ°ããã«ã»ã¿ãŒããã«ã䞊ã¹ãŠèŠããããã¥ã¢ã«ãã£ã¹ãã¬ã€ç°å¢ã¯ããããã°å¹çãäžæ°ã«åºäžãããŠãããŸãð¥ïž
print() ã§ã®ãããã°ãããã¡ãªã®ïŒA. ã·ã³ãã«ãªã±ãŒã¹ãªãåé¡ãããŸããããã ã倿°ãè€æ°ç®æã«åæ£ããŠããå Žåãã颿°ã®åŒã³åºãã远ãããããå Žåã¯ãããã¬ãŒãå§åçã«æ¥œã§ããprintæãä»èŸŒãã§å®è¡âä¿®æ£âåå®è¡ãç¹°ãè¿ãããããã¬ãŒã¯ãã€ã³ãã§äžåºŠæ¢ããŠäžèº«ã確èªããæ¹ããã£ãšéããã°ã®åå ã«ãã©ãçããŸãã
breakpoint() ãš pdb.set_trace() ã®éãã¯ïŒA. ãã£ãŠããããšã¯ã»ãŒåãã§ãããbreakpoint() ã¯Python 3.7以éã§å°å
¥ãããçµã¿èŸŒã¿é¢æ°ã§ãimport ãªãã§äœ¿ããã®ãå©ç¹ã§ãããŸããç°å¢å€æ° PYTHONBREAKPOINT ãèšå®ããã°ãå¥ã®ãããã¬ãŒïŒIPythonçpdbãªã©ïŒã«åãæ¿ããããšãã§ããã®ã§ãããã¢ãã³ãªæžãæ¹ãšããŠæšå¥šãããŠããŸãã
A. VS Codeãªã©IDEã®GUIãããã¬ãŒã䜿ãã®ãæã確å®ã§ãããã¬ãŒã¯ãã€ã³ãã¯ãšãã£ã¿ãŒäžã®è¡šç€ºã«ãããããœãŒã¹ã³ãŒãèªäœã«ã¯æ®ããªãããããããã°ãçµäºããã°èªç¶ãšæ¶ããŸããã³ãããæã®äºæ ãé²ããŠäžç³äºé³¥ã§ãã
A. æšæºãããã¬ãŒãªã sïŒstepïŒã³ãã³ããVS Codeãªããã¹ãããã€ã³ããã¿ã³ãæŒããŸããn ããã¹ããããªãŒããŒãã ãšé¢æ°ã®äžã«å
¥ããã¹ãããããŠããŸãã®ã§ã颿°å
ã®æåã远ããããšãã¯å¿
ã s/ã¹ãããã€ã³ã䜿ããŸãããã
A. ã¯ãã䜿ããŸããã»ã«å
ã« breakpoint() ãæžãã°Pythonæšæºã®ãããã¬ãŒãèµ·åããŸãããæè¿ã®JupyterLabã«ã¯GUIãããã¬ãŒæ©èœãæèŒãããŠããŸããGoogle Colabãªã©ãªã¢ãŒãç°å¢ã§ã breakpoint() ãåããããæ±çšæ§ã¯æçŸ€ã§ãã
printæãããã°ãã忥ããŠããããã¬ãŒã䜿ãããªããããã«ãªããšãåããã°ãçŽãæéãåå以äžã«ãªãããšãçãããããŸããã1è¡ãã€å®è¡ããªãã倿°ã®å€åã芳å¯ã§ããäœéšã¯ãäžåºŠå³ãããšææŸããªããªããŸãð
æ®æ®µã®éçºã§ã¯VS Codeãªã©ã®IDEãããã¬ãŒã軞ã«ãããŒãããã¯ç°å¢ããªã¢ãŒãç°å¢ã§ã¯ breakpoint() ã䜿ãåããââãã®2ã€ã身ã«ã€ããã°ãPythonã§ã®ãã°ä¿®æ£ã¯åçã«éããæ¥œããã確å®ã«ãªããŸããæ¬¡ã«ãã°ã«ééãããšãã¯ããã² print() ã§ã¯ãªããããã¬ãŒãéããŠã¿ãŠãã ããâš
â ïž Windowsã»ãã¥ãªã…
ð§ çªç¶ã®æçš¿ã«ãã¡ã³éšç¶ïŒã©…
ð§© ããºã«ãè§£ãå¿«æãã³ãŒãã§…
âš ããã°ã©ã ã®åäœã軜ããã…
ð ãµãŒããŒãµã€ãéçºã®äžçãž…
âš é¢åãªWebäœæ¥ãèªååã…