반응형 Error(Exception)/ERROR-PYTHON33 [python] NameError NameError에 대한 정리1. 오류 설명NameError는 Python에서 정의되지 않은 변수나 함수, 객체를 호출하려고 할 때 발생하는 오류입니다. 즉, Python이 해당 이름을 찾을 수 없음을 의미합니다.2. 오류 예시변수 또는 함수가 정의되지 않았거나, 오타가 있는 경우.변수가 선언되기 전에 사용된 경우.3. 오류 해결책변수가 정의되었는지 확인: 해당 변수가 존재하는지 확인하고, 없는 경우 정의해야 합니다.오타 점검: 변수나 함수 이름에 오타가 있는지 확인합니다.스코프 확인: 변수나 함수가 올바른 스코프(지역 또는 전역) 내에서 정의되었는지 점검합니다.모듈 및 패키지 확인: 필요한 모듈이나 패키지가 제대로 import되었는지 확인합니다.4. 오류 예제 코드 및 해결 코드오류 예제 코드 1: 변.. 2024. 11. 27. [python] MemoryError 1. 오류 설명: MemoryErrorMemoryError는 파이썬 프로그램이 사용할 수 있는 메모리가 부족할 때 발생합니다. 이 오류는 주로 매우 큰 데이터 구조(예: 리스트, 딕셔너리 등)를 생성하거나, 제한된 시스템 메모리를 초과하는 작업을 수행할 때 발생합니다.2. 오류 예시다음은 MemoryError가 발생할 수 있는 상황입니다:매우 큰 리스트를 생성하려고 시도할 때메모리 집약적인 작업(이미지 처리, 데이터 분석 등)을 수행할 때예시:# 매우 큰 리스트 생성 시도large_list = [0] * (10**10) # 너무 큰 크기3. 오류 해결책데이터 크기 최적화:데이터를 효율적으로 저장할 수 있는 방법을 사용하세요. 예를 들어, 리스트 대신 numpy 배열을 사용하는 것이 유용할 수 있습니다... 2024. 11. 27. [python] KeyboardInterrupt 오류: KeyboardInterrupt1. 오류 설명KeyboardInterrupt는 사용자가 프로그램 실행 중 Ctrl+C를 눌러 프로그램의 실행을 강제로 중단했을 때 발생하는 예외입니다. Python 인터프리터는 이 신호를 감지하고 해당 예외를 발생시켜 실행 중인 프로그램을 종료하거나 제어권을 개발자에게 반환합니다.2. 오류 예시사용자가 실행 중인 스크립트가 무한 루프를 포함하거나 긴 시간 동안 실행 중일 때, Ctrl+C를 눌러 중단하면 이 오류가 발생합니다.# 예제: 무한 루프while True: print("Running...")위 코드를 실행한 상태에서 Ctrl+C를 누르면 다음과 같은 오류가 발생합니다:Running...Running...^CTraceback (most recent ca.. 2024. 11. 26. [python] KeyError KeyErrorKeyError는 Python에서 딕셔너리에서 존재하지 않는 키를 참조할 때 발생하는 오류입니다.1. 오류 설명딕셔너리에서 특정 키로 값을 찾으려고 할 때, 해당 키가 딕셔너리에 없으면 KeyError가 발생합니다.KeyError는 일반적으로 키의 존재 여부를 확인하지 않고 딕셔너리에서 키를 참조할 때 발생합니다.2. 오류 예시# 예제: 존재하지 않는 키에 접근my_dict = {"name": "Alice", "age": 25}print(my_dict["address"]) # KeyError 발생3. 오류 해결책키의 존재 여부를 확인하기:딕셔너리에 키가 존재하는지 확인한 후 값을 가져옵니다.if "address" in my_dict: print(my_dict["address"])else.. 2024. 11. 25. [python] IndexError 파이썬 오류: IndexError1. 오류 설명IndexError는 리스트, 튜플, 문자열과 같은 시퀀스 자료형에서 존재하지 않는 인덱스에 접근하려고 할 때 발생합니다.즉, 인덱스가 유효한 범위를 벗어나면 이 오류가 발생합니다.2. 오류 예시my_list = [1, 2, 3]print(my_list[3]) # IndexError 발생: 리스트의 유효한 인덱스는 0, 1, 2뿐입니다.3. 오류 해결책인덱스 범위 확인: 접근하기 전에 len() 함수로 유효한 인덱스 범위를 확인합니다.예외 처리 사용: try-except 블록을 활용해 오류를 처리합니다.디버깅 및 로직 점검: 반복문이나 인덱스를 사용하는 코드의 로직을 점검하여 잘못된 접근을 방지합니다.4. 오류 예제 코드 및 해결 코드오류 발생 코드# In.. 2024. 11. 24. [python] ModuleNotFoundError ModuleNotFoundErrorModuleNotFoundError는 Python에서 모듈을 임포트하려고 시도했을 때, 해당 모듈이 시스템에 없거나 Python 환경에서 찾을 수 없을 경우 발생하는 오류입니다.1. 오류 설명발생 원인:설치되지 않은 모듈을 임포트하려고 할 때.가상 환경에서 모듈이 설치되지 않았을 때.Python 경로가 올바르지 않거나, 모듈의 위치를 찾을 수 없을 때.Python이 요청한 모듈 파일을 찾지 못해 발생하는 오류입니다.2. 오류 예시# 모듈이 설치되지 않았을 때import numpy # numpy 모듈이 설치되지 않은 경우# 경로 문제로 모듈을 찾지 못하는 경우from mymodule import my_function # mymodule.py 파일이 프로젝트 디렉토리에 .. 2024. 11. 23. [python] RuntimeError RuntimeError에 대한 정리1. 오류 설명RuntimeError는 일반적으로 코드 실행 중 논리적인 문제가 발생했지만, 더 구체적인 오류로 분류되지 않은 경우 발생합니다. 이 오류는 Python에서 특별히 명시된 다른 오류 유형에 속하지 않는 일반적인 실행 시 문제를 나타냅니다.2. 오류 예시아래는 RuntimeError가 발생하는 대표적인 경우입니다:잘못된 쓰레드 접근: 쓰레드가 안전하지 않은 방식으로 공유 자원에 접근하려고 할 때.재귀 한도를 초과했을 때.사용자 정의 함수나 라이브러리에서 예상하지 못한 상태일 때.예시:torch 또는 TensorFlow와 같은 라이브러리에서 발생하는 RuntimeError.재귀 함수에서 최대 호출 한도를 초과.3. 오류 해결책원인 분석: 오류 메시지와 관련 문.. 2024. 11. 22. [python] ImportError ImportError1. 오류 설명ImportError는 Python에서 특정 모듈이나 패키지를 가져올 때 발생하는 오류입니다. 이 오류는 주로 다음과 같은 경우에 발생합니다:가져오려는 모듈이 설치되어 있지 않을 때.잘못된 경로에서 모듈을 가져오려 할 때.Python 버전에 따라 모듈이 호환되지 않을 때.모듈의 이름을 잘못 작성했을 때.2. 오류 예시다음은 ImportError가 발생하는 일반적인 예입니다.모듈이 설치되어 있지 않은 경우:결과:ImportError: No module named 'nonexistent_module'import nonexistent_module잘못된 경로에서 가져오려는 경우:결과:ImportError: cannot import name 'some_function' from .. 2024. 11. 22. [python] GeneratorExit 오류: GeneratorExit1. 오류 설명GeneratorExit는 제너레이터(generator)가 종료될 때 발생하는 예외입니다. 이는 close() 메서드가 호출될 때 내부적으로 발생하며, 제너레이터가 정리 작업을 수행할 수 있도록 설계되었습니다. GeneratorExit는 제너레이터 내부에서 처리할 필요가 거의 없으며, 처리하더라도 반드시 재발생시켜야 합니다. 이 예외는 StopIteration과 비슷하지만, 제너레이터 종료 시에만 발생한다는 점에서 다릅니다.2. 오류 예시def my_generator(): try: yield 1 yield 2 except GeneratorExit: print("Generator is closing!")gen = .. 2024. 11. 21. [python] FloatingPointError FloatingPointError오류 설명FloatingPointError는 Python에서 부동소수점 연산 중 예외적인 상황이 발생할 때 발생하는 오류입니다. 이 오류는 기본적으로 활성화되지 않으며, 명시적으로 Python의 numpy 라이브러리나 fpectl과 같은 모듈에서 부동소수점 오류를 감지하도록 설정해야 발생합니다. 예외적으로 ZeroDivisionError나 OverflowError가 발생하지 않는 대신 FloatingPointError를 유발할 수 있습니다.오류 예시위 코드에서 np.seterr(all='raise')로 부동소수점 오류를 활성화하면, 0으로 나눌 때 FloatingPointError가 발생합니다.import numpy as np# 부동소수점 오류 감지 활성화np.seterr.. 2024. 11. 20. [python] EOFError 파이썬 오류: EOFError1. 오류 설명EOFError는 End Of File (EOF), 즉 파일의 끝이나 입력의 끝에서 발생하는 오류입니다.주로 input() 함수가 더 이상 입력을 받을 데이터가 없는 경우 발생합니다.파일 작업 중에도 예상하지 못한 EOF 상황에서 발생할 수 있습니다.2. 오류 예시(1) input() 함수에서 EOFErrorname = input("이름을 입력하세요: ")만약 입력 스트림(예: 파일에서 읽는 입력)이 종료되거나, 사용자가 아무것도 입력하지 않고 프로그램이 EOF 상황을 만나면 오류 발생.(2) 파일 읽기에서 EOFErrorwith open('example.txt', 'r') as file: while True: line = file.readli.. 2024. 11. 19. [python] PythonFinalizationError PythonFinalizationError1. 오류 설명PythonFinalizationError는 Python 인터프리터 종료 중에 발생하는 오류입니다. 인터프리터가 종료되면서 일부 객체의 소멸자(__del__)가 실행될 때, 이미 해제된 리소스를 참조하거나 사용할 수 없는 상태에서 실행되면 이 오류가 발생합니다. 주로 atexit 모듈이나 전역 객체의 소멸 시점에서 자주 발생합니다.2. 오류 예시Python 인터프리터가 종료 중인데, 소멸자나 전역 객체가 더 이상 유효하지 않은 리소스를 참조하거나 접근하려고 하면 이 오류가 발생합니다.import atexitclass Example: def __del__(self): print("Finalizing...") # 인터프리터.. 2024. 11. 18. [python] AttributeError 파이썬 오류: AttributeError1. 오류 설명AttributeError는 객체에 존재하지 않는 속성이나 메서드를 호출하려고 할 때 발생합니다.보통 객체가 특정 속성(attribute)을 가지지 않거나, 잘못된 메서드 이름을 사용했을 때 나타납니다.예를 들어, 문자열 객체에서 리스트에만 존재하는 메서드를 호출하려고 하면 발생합니다.2. 오류 예시text = "hello"text.append("world")결과:AttributeError: 'str' object has no attribute 'append'문자열 객체(str)는 .append() 메서드를 지원하지 않으므로 오류가 발생합니다.3. 오류 해결책객체 속성 확인:호출하려는 속성이나 메서드가 해당 객체에서 사용 가능한지 확인합니다.내장 함수.. 2024. 11. 18. [python] AssertionError 파이썬 오류: AssertionError1. 오류 설명AssertionError는 assert 문이 실패했을 때 발생하는 오류입니다.assert 문은 디버깅 목적으로 사용되며, 조건이 False일 경우 프로그램을 중단하고 오류를 발생시킵니다.일반적으로 코드의 특정 상태가 예상과 다른 경우를 감지하기 위해 사용됩니다.2. 오류 예시x = 5assert x > 10, "x는 10보다 커야 합니다!"결과:AssertionError: x는 10보다 커야 합니다!assert 문에서 조건 x > 10이 False이므로 오류가 발생합니다.3. 오류 해결책조건문 확인:assert에 사용된 조건이 적절한지 검토합니다.조건이 맞지 않다면 코드를 수정하거나, 조건을 만족하도록 입력 데이터를 변경합니다.디버깅:assert 메.. 2024. 11. 18. [파이썬(python)] PermissionError: 파이썬에서 권한 오류 PermissionError는 파이썬에서 파일이나 디렉토리에 접근할 권한이 없을 때 발생하는 오류입니다. 이 오류는 운영체제에서 파일 또는 디렉토리에 대한 접근 권한을 관리하는 경우에 발생합니다. 예시 # example.txt 파일을 읽기 모드로 열려고 할 때 with open("example.txt", "r") as file: contents = file.read() # Output: PermissionError: [Errno 13] Permission denied: 'example.txt' 해결방법 파일 또는 디렉토리의 권한을 변경하는 방법 # 파일의 권한을 읽기/쓰기 권한으로 변경 import os os.chmod("example.txt", 0o777) 관리자 권한으로 코드를 실행하는 방법 # Wi.. 2023. 2. 10. 이전 1 2 다음 반응형