파이썬 클래스, 함수 왕초보 질문합니다... ㅠ
조회수 818회
클래스 공부 해본답 시고 혼자서 만들어보고 있는데... 덧셈 뺄셈 나눗셈 곱셈 계산기를 만들어보고 싶습니다. 완전 초보라 제가 아는 지식을 동원해서 코딩을 짜고있는데 input 값을 다 받고 나서 계산을 하는 과정에서 오류가 발생합니다. 뭔가 클래스나 함수 사용이 잘못된거 같은데 뭐가 잘못된건지 알려주실 수 있나요 우선은 덧셈 구현하다 막힌 상태에요
class cal:
def plus(self,a,b):
return self,a+b
def minus(self,a,b):
return self,a-b
def multi(self,a,b):
return self, a*b
def half(self, a,b):
return self, a/b
while True :
start = input("+ : 더하기 , - : 뺴기 , * : 곱하기, / : 나누기 : ")
if start == '+':
num1 = int(input("더할 숫자 입력 : "))
num2 = int(input("더할 숫자 입력 : "))
total = (num1,num2)
total = cal
total.plus()
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
안녕하세요!
- 클래스안의 함수 리턴과
- 객체 생성 부분이 약간 이상한것 같네요
먼저
def plus(self,a,b): return self,a+b
return 문 뒤에 self는 없어도 됩니다.
그리고 마지막 3줄
total = (num1,num2) # 이거는 지워주고요 total = cal #여기에 () 이걸추가해서 클래스를 객체로 만듭니다! total.plus() # plus() 이 안에 num1, num2를 넣어줍니다
그러면
class cal: def plus(self, a,b): return a+b while True : start = input("+ : 더하기 , - : 뺴기 , * : 곱하기, / : 나누기 : ") if start == '+': num1 = int(input("더할 숫자 입력 : ")) num2 = int(input("더할 숫자 입력 : ")) total = cal() total.plus(num1,num2)
이런식으로 되겠죠? 수고하세요.
댓글 입력