파이썬에서 함수(Function)는 재사용 가능한 코드 블록을 나타내고, 특정 작업을 수행하는 데 사용된다. 또한 함수는 입력(인자 또는 매개변수)을 받아 처리하고 출력(반환 값)을 생성하는 역할을 한다. 이를 일상생활에서의 비유로 간단히 설명하면 함수는 주방에서 요리를 만들때 사용하는 요리 도구와 같다. 여러 번 사용할 수 있는 도구로, 다양한 요리를 준비할 때 사용된다.
1. 파이썬 함수의 기본 구조
def 함수이름(매개변수1, 매개변수2, ...):
# 함수 내용
return 반환값
아마 파이썬은 처음 접하시더라도 프로그래밍을 접하셨던 분들이라면 위의 코드만 보고도 함수의 구조를 파악할 수 있을 것이다, 하지만 프로그래밍 자체가 처음이신 분들을 위해 위의 코드의 내용을 간단하게 분석해 보자.
• def
함수를 정의하기 위한 키워드이다.
• 함수이름
함수의 이름을 지정한다, 함수 이름은 변수 명명 규칙을 따라야 하며, 의미 있는 이름을 사용하는 것이 좋다, 그리고 보통 함수의 이름을 지정할 때에는 동사를 많이 사용한다.
예를 들어 사용자의 id를 반환하는 함수를 작성한다고 해보자, 그러면 보통 id보단 get_id와 같이 함수 이름을 동사로 지정한다. 추가로 클래스와 변수는 형용사로 이름을 지정하는 것이 보통이다.
• 매개변수 1, 매개변수 2,...
함수가 받을 입력 값을 나타내고 필요한 경우 매개변수는 선택적이라 없을 수 도 있다.
• :
콜른은 함수 정의의 시작을 나타낸다, "여기서부터는 해당 함수의 코드를 작성하겠다"의 의미로 생각하면 된다.
• 함수 내용
함수가 수행할 작업을 구현하는 부분이다.
• return
함수의 결과 값을 반환한다, 반환값이 없는 경우 return 문을 생략할 수 있다.
2. 파이썬 함수 사용 예시
def greet(name):
# 인사말을 생성하고 반환
greeting = f"Hello, {name}!"
return greeting
# 함수 호출
message = greet("Jack")
print(message) # 출력: Hello, Jack!
위 코드에서 greet 함수는 이름(name)을 인자로 받아 해당 이름을 포함한 인사말을 생성하고 반환한다. greet("Jack")와 같이 호출되며, 결과로 "Hello, Jack!"라는 값을 반환한다. 이런 식으로 함수를 사용하면 코드를 재사용할 수 있으며, 복잡한 작업을 더 작은 조각으로 분할하여 관리할 수 있다. 함수는 프로그램에서 중복되는 코드를 줄이고, 코드의 가독성을 높이며, 유지보수를 쉽게 만드는데 큰 역할을 한다. 일상생활에서의 비유로 다시 설명하자면, 함수는 레시피의 한 부분처럼 요리를 단순화하고, 효율적으로 요리를 만들 수 있도록 도와주는 주방 도구와 같다.