본문 바로가기

파이썬 기초/파이썬

매개변수, 실행인자

매개변수 = 함수를 정의할 때 사용되는 이름 

실행인자 = 함수를 실행하여 넘기는 변수 

** 매개변수와 실행인자의 개수는 동일해야한다 **

 


>>> class Calculator:
	def __init__(self):
    	self.result=0
    def add(self,num):
    	self.result+=num
        return self.result
        
 >>>cal1=Calculator()
 >>>cal2=Calculator()
 >>>print(cal1.add(3))
 >>>print(cal1.add(4))
 >>>print(cal2.add(3))
 >>>print(cal2.add(7))

class 로 정의된 부분과 

호출하는 부분을 따로 나눠서 생각해보자! 

 


 

1. 매개변수 

class 안에서 함수를 정의할 때 사용되는 이름 

여기서 매개변수는 def __init__(self)의 self와 deff add(self,num)의 self,num 이 된다. 

__init__ 와 add 에 있는 self 들은 같은 값을 의미하는 것이기 때문에, 이 class 안에서 매개변수는 총 2개가 쓰였다. 

 

최초 실행될 때의 결과값은 0으로 시작한다. 

def add(self,num) 에서 self=인스턴스 , num=매개변수1 로 지정하겠다.

이 add로 정의된 함수는 인스턴스와 매개변수1을 더한다는 의미로, 인스턴스는 전에 호출시 결과값으로 나왔던 값이다. 

쉽게 얘기하면 최초실행때 add(3)을 했으면 결과값은 3이다. 2번째 실행시에는, 전에 결과값으로 나왔던 것이 호출되어 add(4) 라면, 3+4가 되어서 결과값은 7이 나오게 된다. 


2. 실행인자 

실행인자는 매개변수와는 다르게 class 안에서 이뤄지는게 아니라, class 밖에서 함수를 부를 때 사용된다. 

위 코드에서 실행인자는 

 >>>cal1=Calculator()
 >>>cal2=Calculator()
 >>>cal3=Calculator()
 >>>print(cal1.add(3))
 >>>print(cal1.add(4))
 >>>print(cal2.add(3))
 >>>print(cal2.add(7))
 >>>print(cal3.add(3))

이것이 된다. 

변수의 말 그대로, 실행하기 위해 설정하는, 불러오는 인자들이다. 

 

cal2=Calculator(), cal3=Calculator()

2개가 설정되었는데, 이것은 calA 와 calB를 정했다는 거여서, 같은 함수를 각각 다른 메모리(저장소)에서 사용해서 값을 각각 가지겠다는 의미이다. 

그래서 각각 함수가 처음 실행될 때는 cal1 도 cal2 도 처음값을 0으로 가진다. 

그 예 

 

'파이썬 기초 > 파이썬' 카테고리의 다른 글

range,list  (0) 2020.01.27
boolean, 비교연산자  (0) 2020.01.24
매직 메소드, 스페셜 메소드  (0) 2020.01.24
Class  (0) 2020.01.24
Calculator  (0) 2020.01.24