파이썬 중급 3일차(2)

김영목·2021년 7월 31일
0

파이썬중급

목록 보기
4/18

앞서 공부한 매직메쏘드 기초를 넘어 vector를 이용해서 매직메쏘드를 만들어보자.

class vector(object) :
	def __init__(self, *args) :
    '''Create a vector, example : v = vector(5, 10)```
        	if len(args) == 0 :
            		self._x, self._y = 0, 0
            	else :
                	self._x, self._y = args
                    
     	def __repr__(self) :
        	return 'vector({},{})'.format(self._X, self._y)
            
        def __str__(self) :
        	return 'vector({%r},{%r})' % (self._X, self._y)
            
 	def __add__(self, other) :
    		return vector(self._x + other._x, self._y + other._y)
          
        def __mul__(self, y) :
        	return vector(self._x * y, self._y * y)
         
        def __sub__(self, other) :
        	return vector(self._x - other._x, self._y - other._y)

위 처럼 클래스를 만들고 몇가지 재미있는 테스트를 해보자.


v1 = vector(5, 7)
v2 = vector(23, 35)
v3 = vector()

print(v1.__init__.__doc__)
결과 : Create a vector, example : v = vector(5, 10)

print(v1 + v2)
print(v1 * 7)
print(bool(v3))


        
        
                
                
    	
profile
안녕하세요 김영목입니다.

0개의 댓글