인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

janus690525's profile image
janus690525

asked

Getting Started with Programming: Introduction to Python (Inflearn Original)

Class(1-2)

예제 2

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')

python

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에서는 일어나지 않습니다!

-----------------------------------------------------------------------------

도움이 되었으면 우측하단 또는 좌측하단에 하트 한번만 눌러주세요 :)

또한, 해결이 안된 경우 답글 작성 부탁드립니다!

janus690525's profile image
janus690525

asked

Ask a question