함수 (Function)
함수의 선언
함수 선언은 def 키워드를 사용하여 선언하고 기본적인 파이썬 내장 함수 (print 함수 등) 외에 사용자가 정의하여 사용한다.
함수 안에 들어가는 코드들은 모두 들여쓰기 (indentation) 를 통해서 블록으로 만들어야 한다. (단, 함수명은 숫자로 시작할 수 없다!!)
def <함수명>() :
실행할 코드블록
함수의 실행
함수의 실행은 def를 통해 만든 함수 이름 + ()를 통해서 가능하다.
def function() : # 함수 정의(선언)
print("텍스트")
function() # 함수 실행
매개변수와 실행인자
- 매개변수 (parameter) : 함수를 정의할 때 사용하는 이름
- 실행인자 (argument) : 함수를 실행할 때 넘기는 변수, 값
def <함수명>(매개변수1, 매개변수2, ...) :
실행할 코드블록
매개변수와 실행인자 모두 여러개일 경우 쉼표로 구분한다.
매개변수와 실행인자의 개수는 동일해야 한다. (개수와 순서가 중요)
def say_hello(name, age) :
print("hello", name, "how are you?")
print("you are", age, "years old.")
say_hello("Y씨", 23)
매개변수의 기본값 (default parameter function)
매개변수가 있는 경우 무조건 실행인자를 넘겨야 한다. 하지만 매개변수의 기본값을 설정한다면 실행인자를 넘기지 않아도 기본값이 실행인자로 넘어간다.
def <함수명>(매개변수 = 기본값) :
실행할 코드블록
def say_hello(name="annoymous"):
print("Hello", name)
say_hello() # 출력 : Hello annoymous
함수의 값
함수의 값 : " return " 키워드를 통해서 값을 돌려줄 수 있다. 만약 여러 값을 반환한다면 return 뒤에 여러 값을 쉼표로 구분해서 값을 보내고, 받을 때도 쉼표로 구분하여 받아야 한다.
def add(value1, value2) :
result = value1 + value2
return result #함수의 값 반환
n = add(5, 10)
print(n) # 15
[참고] 메서드 (Method) vs 함수 (Function)
메서드는 데이터에 "Bounded"(결합/연결) 함수들이고, Function은 아무때나 자유롭게 사용 (ex. print())
즉, 메서드는 String 데이터의 함수들, List의 함수들 등과 같이 데이터의 결합된 함수
Method의 예시 : "name".upper(), "name".capitalize()
'Python > 파이썬 기초' 카테고리의 다른 글
[Python] 자료구조 2 - 딕셔너리, 튜플 (0) | 2023.02.19 |
---|---|
[Python] 자료구조 1 - 리스트 (0) | 2023.02.17 |
[Python] 자료형과 사용자 입력 (0) | 2023.02.17 |
[Python] 조건문 (0) | 2023.02.16 |
[Python] 변수, 주석 (0) | 2023.02.15 |