ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 파이썬 NameError: name is not defined 에러 해석
    AI Python/Python 2020. 10. 31. 22:24

    파이썬 NameError: name is not defined 에러 해석

    파이썬 코딩시 발생하는 오류들을 정리해 봤습니다.

    책들은 기초부분을 빼고 작성하기에 이해가 어려울때가 있네요. numpy명령을 기준으로 작성했습니다.

    파이썬 코딩시 오타등등 에러 메시지가 나타날때 복잡하고 해석하기 힘들때가 있습니다.

    우선 가장많이 발생하는 NameError: name is not defined 부분에 대해서 작성을 해보겠습니다.

    파이썬 name is not defined 에러는 4가지 종류가 있습니다.

    1. 오타 확인 및 수정

      NameError: name 'nunpy' is not defined (numpy 입니다.)

    2. 사용하려는 명령어 설치가 필요한경우

    3. 사용하려는 명령어를 약자로 사용하는 경우. import 명령

    4. 코드 작성자 직접 만든(만들어져있는) 변수, 함수가 없는 경우, 찾을수 없는경우.

    NameError: name 'grid' is not defined

    NameError: name 'a' is not defined

    1. 코딩할때 기본에러 해결은 오타를 유심히 살피고, 기호 부분을 확인합니다.

    . , : ' " () [] {} 등등을 꼭확인합니다.

    nunpy라고 쓰면 에러납니다. 대소문자도 구별합니다.

    1. 사용하려는 명령어가 설치 필요 한경우

    사용하려는 명령어 라이브러리를 설치하면 정상 작동합니다.

    cmd 창에서 예로 pip install numpy

    pip명령어 사용법을 모르는 경우에는 아래 링크를 확인하시면 됩니다.

    Python pip install 사용방법, 필수 라이브러리와 도구 설치

    https://blog.naver.com/lcj8390/221980377436

    1. 사용 하려는 명령어를 import 명령으로 약어를 사용한 경우. ( import numpy as np )

    코딩 첫부분 import 부분은 주의 해서 확인을 해야됩니다.

    import ... as ... 명령을 써서 해당 명령어는 약어로 사용하게 됩니다.

    numpy 라는 명칭 대신 np 로 명령어를 줄여서 사용합니다.

    약어의 경우 모두가 동일 하게 사용하기로 약속이 되어 있기 때문에 똑같이 명령어를 작성해주시는게 코딩오류가 안나는 방법입니다.

    ex)

    import numpy as np

    numpy 명령어를 앞으로는 np라고만 입력해서 사용할거라는 코드입니다.

    import matplotlib.pyplot as plt

    matplotlib.pyplot 이라는 명령을 plt 약어로 사용 합니다.

    np.array........ , numpy.array....... 둘다 같은 코드 입니다.

    코드가 길어지기 때문에 np약어로 사용을 합니다.

    NameError: name 'np' is not defined

    NameError: name 'plt' is not defined

    ** import 명령이 있는데도 에러가 난경우는 설치가 안된경우 이니 1을 따라하시면 됩니다. **

    1. 명령어가 아닌 프로그래밍 코딩시 작성자가 직접 만든 변수, 또는 함수

    해당 내용은 변수를 코딩작성자가 마음대로 ( 특정 명칭을 빼고 사용가능) 설정해서 사용가능 합니다.

    그러나 코드를 불러오거나, 이어지는 코드에서 중간만 사용하는경우 변수선언이 빠지면 에러메시지가 발생합니다.


    a= list[23,654,234,767.......]

     

    def grid

     

    def add(a,b)

        a=45

        b=56784

    return a*b

     

    NameError: name 'grid' is not defined

     

    NameError: name 'a' is not defined

     

     

    ++++++++++++++++++++++++++++++++++++
    초보자를 위한 python 도우미
    https://lcj8390.tistory.com/85
    초보자용 필독도서 점프투파이썬
    https://wikidocs.net/book/1
    Python install 설치 방법
    lcj8390.tistory.com/80
    Python pip install 사용방법, 필수 라이브러리와 도구 설치
    lcj8390.tistory.com/81

    Python Jupyter notebook 사용방법 주피터노트북 사용법 1
    https://lcj8390.tistory.com/83
    Python Jupyter notebook 사용방법 주피터노트북 사용법 2
    https://lcj8390.tistory.com/84
    파이썬 NameError: name is not defined 에러 해석
    https://lcj8390.tistory.com/86
    Python raw_input 명령 안될때 name 'raw_input' is not defined
    https://lcj8390.tistory.com/87
    +++++++++++++++++++++++++++++++++++++

Designed by Tistory.