class Triangle:
base=0
height=0
def set_length(a,b,self):
self.base=a
self.hight=b
def print_area(self):
return (a*b)/2
class RATriangle(Triangle):
def print_hypotenuse(a,b):
c=(a**2+b**2)**(1/2)
return c
이렇게 입력했는데
Internal Error:
'int' object has no attribute 'base'
이렇게 오류떠 ㅠㅠㅠ 어떻게 해야하는거야?
제발 아무나 어떻게 해야하는지 알려주라 ㅠㅠㅠㅠㅠㅠ 3시간째 잡고잇어ㅠㅠㅠㅠㅠ
3시간이면 별로 안 잡은거야 하루는 생각해봐야돼
시험문제라 닫으면 안되는데 ㅠㅠㅠㅠㅠㅠ base가 int자료형아니야? 왜 저렇게 뜨는거야?/ㅠㅠㅠ
이틀동안 풀자 ㅇㅅㅇ
누가 알려줘서 되면 뭔소용인데
class Triangle: base=0 height=0 def set_length(a,b): self.base=a self.hight=b def print_area(): return (self.base*self.height)/2class RATriangle(Triangle): def print_hypotenuse(): return ((self.base)**2 + (self.height)**2)*(1/2)
줄바꿈 알아서 잘 해서 이렇게 해봐
잉 안되는뎅 ㅠㅠ
'int' object has no attribute 'base' 이렇게 떠 ㅠㅠ base가 정수형이 아닌가?
클래스 선언 말고 main 함수도 같이 보여줭
메인함수가 뭐지... 클래스 선언말고 다른 함수 적은건 없어 ㅠㅠ
class Triangle: base=0 height=0 def set_length(a,b,self): self.base=a self.height=b def print_area(): return (self.base*self.height)/2class RATriangle(Triangle): def print_hypotenuse(): return ((self.base**2+self.height**2)**(1/2))
아 파이썬은 메인이 없구나 그럼 저거만 딱 쓰고 실행함?
응 저거 쓰고 실행했는데 'int' object has no attribute 'base' 이렇게 떠 ㅠㅠ 뭔가 자료형을 바꿔야하는거 같은데 뭔지모르겟어
class Triangle:base=0height=0def set_length(self,a,b):self.base=aself.height=bdef print_area(self):return (self.base*self.height)/2class RATriangle(Triangle):def print_hypotenuse(self):return ((self.base**2+self.height**2)**(1/2)) 이거는?? 파이썬은 메서드 호출할 때 self가 필요한가보구나
오 친구야 고마워 ㅎㅎㅎㅎ 너꺼 참고해서 풀었어 !! self를 가장먼저 써야하는구나. 고마워!!!!!1
나머지 메서드랑 상속받은 클레스에 메서드에도 self로 넣어야하는구나 알았어!! 고마워 ㅎㅎㅎ 덕분에 기분좋게 잘수있겠다 알려줘서 고마워!!
ㅇㅇ 근데 님 처음 쓴 코드 문제가 좀 많음 print_area(self) 이 함수는 a, b가 뭔지 모르고 print_hypotenuse(a,b)는 a, b를 인자로 전달해서는 안 됨
그러네 처음 쓴 코드에서도 a,b도 정의안하고 썻구나... 앞으로 잘 보고 해야겟다 고마버!!
그랭 공부 열심히행ㅎㅎ
친절하게 알려줘서 고마워 ㅎㅎㅎ!
알려주고싶은데파이썬잘몰라미안해
파이썬같이 쉬운 언어면 스스로 해야지
저거 self a b하면 일단 될텐데
오 ㄳㄳ그러넹 ㅋㅋ
self는 선택이 아니라 필수임. 파이썬의 클래스 메소드는 반드시 첫번째 인자로 자기 자신의 인스턴스를 받기 때문에 무조건 넣어야되고 안넣으면 다른 첫번째 변수가 인스턴스를 받아옴