벡터를 스칼라와 곱하기 위해 * 오버로딩하기

매일 공부(ML)·2023년 3월 20일
0

Fluent Python

목록 보기
96/130

연산자 오버로딩: 제대로 하기

객체지향 상용구

벡터를 스칼라와 곱하기 위해 * 오버로딩하기

Vector 피연산자를 이용해서 곱하는 또 다른 방법은 두 벡터의 내적을 구하는 스칼라곱으로 현재 Numpy 및 이와 유사한 라이브러리에선 *연산자를 사용하는 경우, 벡터의 각 항목에 값을 곱하며, 벡터의 스칼라곱을 구하기 위해서 numpy.dot()함수 사용

#Vector 클래스 내부

def __mul__(self, scalar):
	return Vector(n * scalar for n in self)

def __rmul__(self, scalar):
	return self * scalar
profile
성장을 도울 아카이빙 블로그

0개의 댓글