Written on
·
200
0
제가 아톰 에디터가 아닌 인텔리제이를 사용하고 있는데 예제 2번에서 func1에 아무 인자를 넘겨주지 않으면 오류가 뜨는데 왜그럴까요ㅠㅠ
Method must have a first parameter, usually called 'self' 라는 오류가 뜹니다ㅜㅜ
# 예제 2
# self의 이해
class SeltTest:
def func1():
print('Func1 called')
def func2(self):
print('Func2 called')
Answer 1
0
Stackoverflow에서 검색해보니
@staticmethod와 @classmethod로 정의하면 해결되는 문제인 것 같습니다 :)
class SelfTest:
@staticmethod
def func1():
print('Func1 called')
@classmethod
def func2(self):
print('Func2 called')
직접 제가 위에 있는걸로 해보니 오류가 없어지네요
전 intellij에 있는 Pycharm을 사용했습니다.
혹시나 하는 마음에 Atom과 Visual Studio Code 오류가 나는지 확인해봤는데
intellij에만 일어나는 오류이고 Atom이나 visual studio에서는 일어나지 않습니다!
-----------------------------------------------------------------------------
도움이 되었으면 우측하단 또는 좌측하단에 하트 한번만 눌러주세요 :)
또한, 해결이 안된 경우 답글 작성 부탁드립니다!