본문 바로가기
방구석코딩/파이썬 기초문법

[파이썬] 함수 정의, def문 만들기, 실행

by 석세상 2024. 2. 27.
반응형

파이썬에서 함수 정의를 하기 위한 def문 만들기, 실행 방법에 대해 알아보도록 하겠습니다.

파이썬 함수정의, def 만들기/실행

 

 

기본 이해하기

Python에서 함수는 특정 작업을 수행하도록 설계된 체계적이고 재사용 가능한 코드 블록입니다. "def" 키워드는 함수를 정의하는 부분입니다. 가장 간단한 형식부터 시작해 보겠습니다.

def greet():
	print("Hello, Python Enthusiasts!")

# Call the function
greet()

이 예에서는 "def"를 사용하여 greet라는 함수를 정의한 다음 호출합니다.

 

출력은 다음과 같습니다.

Hello, Python Enthusiasts!

 

이제 이 함수의 구성 요소를 분석해 보겠습니다.

 

  • def : 이 키워드는 함수 정의의 시작을 표시합니다.
  • greet : 이것이 우리 함수의 이름입니다. 함수의 목적을 반영하는 이름을 선택하세요
  • () : 괄호는 매개변수 전달에 사용됩니다. 이 경우 함수는 매개변수를 사용하지 않습니다.
  • 들여쓰기 : "def Greeting():" 들여쓰기 블록은 함수 본문입니다. 함수가 호출될 때 실행될 코드가 포함되어 있습니다.

 

함수 매개변수 및 반환 값

함수가 의미 있는 작업을 수행하려면 입력이 필요한 경우가 많습니다. 매개변수를 사용하면 정보를 함수에 전달할 수 있습니다. 특정 사람에게 인사하는 기능을 향상해 보겠습니다.

여기서 매개변수에 대해 조금 설명하자면 파이썬의 매개변수는 함수 정의 시 사용되는 변수를 의미합니다. 함수를 호출할 때 이런 매개변수들을 통해 값을 전달할 수 있습니다.

def greet_person(name):
	print(f"Hello, {name}!")

# Call the function with a parameter
greet_person("Alice")

#결과
Hello, Alice!

여기서 name은 매개변수이며 함수 호출 시 "Alice" 인수를 전달합니다.

 

함수는 "return" 키워드를 사용하여 값을 반환할 수도 있습니다. 인사말을 반환하도록 함수를 수정해 보겠습니다.

def generate_greeting(name):
	return f"Hello, {name}!"

# Call the function and store the result
greeting = generate_greeting("Bob")
print(greeting)

#결과
Hello, Bob!

이 예에서 함수는 인사말을 반환하고 이를 greeting 변수에 저장합니다.

 

기본 매개변수 및 키워드 인수

Python을 사용하면 매개변수의 기본값을 설정하여 일부 인수를 선택적으로 만들 수 있습니다.

def greet_with_default(name="Pythonista"):
	print(f"Hello, {name}!")

# Call the function without providing an argument
greet_with_default()

#결과
Hello, Pythonista!

추가적으로 키워드 인수를 사용하여 함수 호출을 보다 명확하게 만들 수 있습니다.

def full_name(first, last):
	return f"{first} {last}"

# Call the function using keyword arguments
name = full_name(last="Doe", first="John")
print(name)

#결과
John Doe

이렇게 하면 인수의 순서가 중요하지 않으며 코드 가독성이 향상됩니다.

 

변수의 범위

변수의 범위를 이해하는 것이 중요합니다. 함수 내부에 정의된 변수는 해당 함수에 대해 로컬입니다.

def local_scope():
	x = 10
	print(f"Inside the function: {x}")

# Call the function
local_scope()

# Uncommenting the line below will result in an error
# print(f"Outside the function: {x}")

#결과
Inside the function: 10

함수 외부에서 x를 인쇄하려고 하면 x가 함수에 로컬이므로 오류가 발생합니다.

 

재귀 함수

728x90

함수는 자신을 호출할 수 있으며 이는 재귀라는 강력한 프로그래밍 개념으로 이어집니다. 숫자의 계승을 계산하는 간단한 재귀 함수를 구현해 보겠습니다.

def factorial(n):
	if n == 0 or n == 1:
		return 1
	else:
		return n * factorial(n - 1)
result = factorial(5)
print(result)

#결과
120

여기서 'factorial' 함수는 숫자의 계승을 계산하기 위해 자신을 호출합니다.

728x90
반응형

댓글