본문 바로가기
300x250

프로그래밍/오류4

[오류] ValueError 생각보다 나오기 쉬운 오류다. 자료형이 맞지 않으면 나오는 오류인데, 문자열, 'abc'를 int로 바꾸는 등 자료형에 맞지 않게 사용하면 나온다. python의 경우 자료형 확인은 type 함수를 사용하면 알 수 있다. 2023. 2. 16.
[오류] IndexError IndexError: list index out of range, 가장 고통을 많이 주는 에러다.. list[i]에서 i의 값이 list의 크기를 벗어나면 생기는 에러이다. '분명 범위를 잘 구했는데?'라고 생각하며 오류를 찾지만 머리만 아프고 틀린 곳을 찾기가 생각보다 힘들다. 대부분은 빈리스트에 input받은 값을 추가하려 할때 나온다. 빈리스트에 input받은 값을 추가할 때는 list.append(input값)을 사용하자 2023. 2. 15.
[오류] ZeroDivisionError 정말 에러를 그대로 번역하면 된다. 수를 0으로 나눠서 에러가 발생했다는 뜻이다. 0으로는 수를 나눌 수 없기 때문에 나오는 에러인데, 이는 정말 간단하게 나누는 수가 0일 경우를 예외로 처리해버리면 해결된다. 2023. 2. 15.
[오류] RecursionError 파이썬으로 dfs같은 재귀 문제를 풀다 보면 백준에서 가끔 RecursionError가 나오는 경우가 있다. 분명 예제는 잘 돌아가는데 어디서 오류가 나온건지 멘붕이 온다. 이를 고치기 위해서 dfs의 경우에는 재귀를 사용하지 않고 stack을 사용해서 문제를 풀어도 되지만, 굳이 잘돌아가는 코드를 갈아엎기엔 아깝기에 재귀함수를 사용하면서 RecursionError를 피해가는 법에대해 말해보고자 한다. Python의 재귀 깊이는 1,000번이 최대이다. 하지만 이는 sys모듈에서 지원하는 setrecursionlimit() 함수로 재귀 깊이 제한을 변경할 수 있다. 2023. 2. 15.
300x250