1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
#-*- coding:utf-8
'''
Created on 2022. 4. 7.
@author: hwakgo
'''
class NumBox:
def __init__(self,num):
self.num = num
self.num2 = num
def __add__(self,num):#★ 왼쪽에 위치한 객체 잠조변수와 덧셈하려면 __add__ 함수가 자동으로 호출된다
self.num += num
return "더하기(__add__):" +str(self.num)
def __radd__(self,num):#★ 오른쪽에 위치한 객체 잠조변수와 덧셈하려면 __add__ 함수가 자동으로 호출된다
self.num += num
return "더하기(__radd__):" + str(self.num)
def __sub__(self,num):#★ 왼쪽에 위치한 객체 잠조변수와 뺄셈하려면 __sub__ 함수가 자동으로 호출된다
self.num -= num
return "빼기(__sub__):" + str(self.num)
print(1+2)#▶3
print("ab"+"cd")#▶abcd
print("ab"+str(12))#▶ab12
print(int("12")+34)#▶46
#★ 숫자, 문자열 말고 객체와도 연결해서 콘솔 창에 출력 가능함
n1 = NumBox(10)#num, num2에 각각 10이 들어감
print(n1.num+20)#▶30
#왼쪽에 위치한 참조변수와 덧셈하려면 자동으로 __add__함수가 호출된다(연산자 오버로딩)
print(n1+20)#▶더하기(__add__):30
#오른쪽에 위치한 참조변수와 덧셈하려면 자동으로 __radd__함수가 호출된다(연산자 오버로딩)
print(30+n1)#▶더하기(__radd__):60
#왼쪽에 위치한 참조변수와 뺄셈하려면 자동으로 __sub__함수가 호출된다(연산자 오버로딩)
print(n1-7)#▶빼기(__sub__):53
|
cs |
▼ (이전 게시물) [확고의 쓱~ 훑어보는 기록] Python - 상속 예제(2)
▼ (첫 번째 게시물) [확고의 쓱~ 훑어보는 기록] Python - 출력 예제 (print / str, int 함수 / 서식 문자 사용)
728x90
반응형
'IT & 일상기록 > Python' 카테고리의 다른 글
[확고의 쓱~ 훑어보는 기록] Python - DB (1) (데이터베이스 연결 방법) (0) | 2022.08.03 |
---|---|
[확고의 쓱~ 훑어보는 기록] Python - 예외 처리 (0) | 2022.08.03 |
[확고의 쓱~ 훑어보는 기록] Python - 상속 예제(2) (0) | 2022.08.03 |
[확고의 쓱~ 훑어보는 기록] Python - 상속 예제(1) ( __init__(self) 생성자 만들기 / 상속받는 클래스 생성 방법) (0) | 2022.08.03 |
[확고의 쓱~ 훑어보는 기록] Python - 클래스 예제(3) (0) | 2022.08.03 |
댓글