파이썬 오류 - AttributeError: type object '...' has no attribute '...'
컴파일러 환경에서만 개발했던 경우라면, 이 에러가 왜 났는지 잘 이해가 안 될 수 있습니다. ^^;
가령 다음과 같은 코드에서,
class MyTest:
def __init__(self):
MyTest.get_my_ip()
@staticmethod
def get_my_lp(self):
return 5
t = MyTest()
실행하면, 이런 식으로 오류 메시지를 볼 수 있습니다.
Traceback (most recent call last):
File "/mnt/d/pycharm/work/testconsole/main.py", line 16, in <module>
t = MyTest()
File "/mnt/d/pycharm/work/testconsole/main.py", line 9, in __init__
MyTest.get_my_ip()
AttributeError: type object 'MyTest' has no attribute 'get_my_ip'
단순하게 오류 메시지로만 봤을 때는 왜 메서드 호출에서 "attribute"를 찾을 수 없다고 하는 것인지, 거기서부터 헤맬 수 있습니다. ^^; 하지만, 자세히 보면 철자에 오류가 있었던 것입니다. 가령, get_my_ip를 get_my_lp로 정의했기 때문입니다.
따라서, 저런 오류를 만나게 되면 눈 크게 뜨고 철자 오류가 없는지 유심히 봐야 합니다. (혹은, PyCharm과 같은 IDE를 사용하면 저런 경우 "MyTest.get_my_ip()"에서 get_my_ip를 찾을 수 없어 박스 표시를 해주므로 더 식별이 용이합니다.)
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]