ãšã©ãŒã¡ãã»ãŒãžã¯ããªãã®æé«ã®å®¶åºæåž«
ãšã³ãžãã¢ãšããŠã®æé·ã¯ããšã©ãŒã«å¯Ÿããåãåãæ¹ããå§ãŸããŸãããã³ãŒããåããªãïŒããšãããã¯ã«ãªãåã«ããšã©ãŒã¡ãã»ãŒãžãäžå¯§ã«èªã¿è§£ãããšããåé¡è§£æ±ºåãé£èºçã«åäžãããŸãããšã©ãŒã¡ãã»ãŒãžã¯ãå®ã¯ç¥æ§ããã®ã©ãã¬ã¿ãŒããããçè§£ã§ããã°ãããªãã®ãšã³ãžãã¢äººçãçã«åãåºãã®ã§ãã
ãšã©ãŒã¡ãã»ãŒãžã®è§£äœå³ïŒ4ã€ã®ããŒãã€ã³ã
ãšã©ãŒã¡ãã»ãŒãžã¯ã以äžã®4ã€ã®èŠçŽ ããæãç«ã£ãŠããŸããããããæèããã ãã§ãåé¡ã®åå ãèŠããŠããŸãã
-
ãšã©ãŒã¿ã€ã
â åé¡ã®ã«ããŽãªãŒïŒäŸïŒTypeErrorïŒ -
çºçå Žæ
â ãã¡ã€ã«åãè¡çªå·ã§åé¡ã®äœæã瀺ãïŒäŸïŒFile "<stdin>", line 1ïŒ -
å ·äœçãªå 容
â äœãæªãããã©ã®éšåãåå ã§ããããå ·äœçã«èª¬æïŒäŸïŒcan only concatenate str (not "int") to strïŒ -
解決ã®ãã³ã
â æ¬¡ã«äœããã¹ããã®ç€ºåïŒäŸïŒãå倿ãå¿ èŠãïŒ
äžèšã®ã·ã³ãã«ãªå³ã¯ããšã©ãŒã¡ãã»ãŒãžã®æ§é ãèŠèŠçã«è¡šçŸããŠããŸãã
å®è·µïŒãšã©ãŒè§£æ±ºã®3ã¹ããã
ãšã©ãŒã¡ãã»ãŒãžãèªãæè¡ã¯ã以äžã®3ã€ã®ã¹ãããã§å®è¡ãããšå¹æçã§ãã
ã¹ããã1ïŒå·éã«èªãïŒReadïŒ
ãŸãã¯ãšã©ãŒã¡ãã»ãŒãžãèœã¡çããŠç¢ºèªããŸãããã
äŸãã°ãPythonã§äžèšã®ã³ãŒããå®è¡ããå ŽåïŒ
print("hello" + 5)
次ã®ãããªãšã©ãŒã衚瀺ãããŸãã
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
ãã€ã³ãïŒ
- ãšã©ãŒã¿ã€ãã¯
TypeError - çºçå Žæã¯
<stdin>ã®1è¡ç® - åé¡ã®å å®¹ã¯æååãšæ°å€ãé£çµã§ããªãããš
ã¹ããã2ïŒè«ççã«èããïŒThinkïŒ
ãšã©ãŒã¡ãã»ãŒãžã®èŠçŽ ãåè§£ãã以äžã®ç¹ããã§ãã¯ããŸãã
- ãšã©ãŒã¿ã€ãããã©ã®ã«ããŽãªãŒã確èª
- 該åœç®æãèŠçŽãã倿°ã®åãå®çŸ©ããã§ãã¯
- ã¹ã³ãŒããã¿ã€ãã®å¯èœæ§ãæ€èšŒ
äŸãšããŠãJavaScriptã®ãšã©ãŒãªãïŒ
Uncaught ReferenceError: foo is not defined at main.js:5:3
ãã®å Žåã¯ããfooããšãã倿°ãå®çŸ©ãããŠããªãããšãåå ã§ãã
ã¹ããã3ïŒäœç³»çã«è©ŠãïŒTryïŒ
ãšã©ãŒã®åå ã倿ããããå®éã«ä¿®æ£ããŠã¿ãŸãããã
ããšãã°ããŒãé€ç®ãšã©ãŒãé¿ããããã®Pythonã®ãããã°äŸã§ãã
def divide(a, b):
print(f"a={a}, b={b}") # ãããã°çšåºå
return a / b
# 0é€ç®ãšã©ãŒãçºçããã±ãŒã¹
divide(5, 0)
ãããã°ã®åºæ¬ããŒã«ïŒ
- 倿°ã®å€åºåïŒprintãããã°ïŒ
- ã¹ã¿ãã¯ãã¬ãŒã¹ã®è§£æ
- ãã¬ãŒã¯ãã€ã³ãèšå®ïŒãããã¬å©çšïŒ
ãããæŽ»çšãããšãã¹ããŒããã¯ããã¯
ã°ã°ãæ€çŽ¢ã®æ¥µæ
æ€çŽ¢ããŒã¯ãŒãã®éžã³æ¹ã²ãšã€ã§è§£æ±ºé床ã¯å€§ããå€ãããŸãã
-
æªãæ€çŽ¢äŸïŒ
ãPython errorã -
è¯ãæ€çŽ¢äŸïŒ
ãTypeError can only concatenate str to str site:stackoverflow.comã
ãšã©ãŒã¡ãã»ãŒãžç¿»èš³ã®ã³ã
- ãšã©ãŒæããã®ãŸãŸã³ããŒããïŒè±èªã§ãå¯ïŒ
- ãšãã£ã¿ã§éèŠãªããŒã¯ãŒãããã€ã©ã€ã
- å ¬åŒããã¥ã¡ã³ããã³ãã¥ããã£ãµã€ãã§è©³çŽ°ãæ€çŽ¢
äžèšã®å³ã¯ããšã©ãŒè§£æ±ºãããŒãèŠèŠåãããã®ã§ãã
ãšã©ãŒã«åŒ·ããªãããã®5ã€ã®çãã¬
ãšã©ãŒã¡ãã»ãŒãžã«æ £ãããããæ¥åžžçã«æ¬¡ã®ãã¬ãŒãã³ã°ãåãå ¥ããŠã¿ãŸãããã
-
æå³çã«ãšã©ãŒãèµ·ãã
ãµã³ãã«ã³ãŒãã§ãããŠã¿ã€ãã誀ã£ãå€ã䜿çšããŠããšã©ãŒã¡ãã»ãŒãžã«æ £ããã -
ãšã©ãŒãã°ã®åéè¡
ãã°ãã¡ã€ã«ããªã¢ã«ã¿ã€ã ã§ç£èŠããéèŠãªãšã©ãŒã¡ãã»ãŒãžãè²åãããã³ãã³ãïŒtail -f app.log | grep --color -E 'ERROR|WARN|INFO' -
ãšã©ãŒäºæž¬ããªã«
以äžã®ã³ãŒããå®è¡ãããšã©ããªãšã©ãŒãåºããèããŠã¿ãŸããããnumbers = [1, 2, 3] print(numbers[3]) -
ãšã©ãŒã¡ãã»ãŒãžç¿»èš³ããŒããäœæ
è±èªè¡šçŸ æå³ å¯ŸåŠæ³ undefined倿°ãå®çŸ©ãããŠããªã 倿°ã®å®£èšã»å®çŸ©ã確èªãã permission deniedæš©éäžè¶³ ãã¡ã€ã«ããã£ã¬ã¯ããªã®æš©éã確èªãã -
ãããã°ã¿ã€ã ã¢ã¿ãã¯
ç°¡åãªãšã©ãŒè§£æ¶ã5åãäžçšåºŠã®åé¡ã15åãè€éãªåé¡ã1æé以å ã§è§£æ±ºããã¿ã€ã ãã£ã¬ã³ãžã宿œã
æåŸã«ïŒãšã©ãŒã¡ãã»ãŒãžãèªãåãããªããå€ãã
ãšã©ãŒã¡ãã»ãŒãžã«åºäŒããã³ã«ãæ·±åŒåžããŠèªã¿è§£ããŠã¿ãŸãããã
ãšã©ãŒã¯åãªãé害ã§ã¯ãªããããªãã®æé·ãä¿ãããã®ãã³ããé ãããŠããŸãã
ãããã®ãã¯ããã¯ãå®è·µããã°ããšã©ãŒãšã®å¯Ÿè©±ãèªç¶ãšãªããçã®è§£æ±ºåã身ã«ã€ãã¯ãã§ãã
æåŸã«ããšã³ãžãã¢ãšããŠã®å²åŠçãªã¢ããã€ã¹ã§ãã
// ãšã©ãŒã¡ãã»ãŒãžããåŠã¶ããšã決ããŠå¿ãããª
public class Engineer {
public static void main(String[] args) {
while (true) {
try {
learnFromErrors();
} catch (Exception e) {
analyzeError(e);
}
}
}
}
仿¥ãããšã©ãŒã¡ãã»ãŒãžã«åãåãããã®èšèãèªåã®æé·ã®ç³§ã«ããŠãã ãããããªãã®åé¡è§£æ±ºèœåããããçã®ããšã³ãžãã¢ããžã®éãåãæãã®ã§ãïŒ
ãã®ããã«ããšã©ãŒã¡ãã»ãŒãžãèªã¿è§£ãæè¡ã身ã«ã€ããããšã§ãæ¥ã ã®é害ãåŠã³ãšæé·ã®ãã£ã³ã¹ãžãšå€ãããŸããèªè ã®çããããã²åãå ¥ããŠã次ã®ã¹ããããžãšé²ãã§ãã ããã
