Python 함수: 최종 가이드 및 예제
Python 함수를 마스터하세요. def를 사용하여 재사용 가능한 코드를 작성하고, 인수를 정의하고, 값을 반환하고, 로컬 및 전역적으로 범위를 이해하는 방법을 알아보세요.
개요
함수는 단일한 특정 작업을 수행하도록 설계된 재사용 가능한 조직화된 코드의 자체 포함 블록입니다. Python 스크립트가 몇 줄 이상으로 늘어나면 코드를 함수로 구성하는 것이 중요해집니다. 함수는 복잡성을 추상화하여 기본 프로그램 흐름을 더 쉽게 읽고 유지 관리할 수 있도록 합니다. 여러 위치에서 동일한 논리를 반복하는 대신 함수를 한 번 작성하고 필요할 때마다 "호출"합니다.
Python은 `print()`, `len()` 및 `type()`과 같은 다양한 내장 함수를 즉시 제공합니다. 그러나 프로그래밍의 진정한 힘은 자신만의 사용자 정의 함수를 만드는 데서 나옵니다. 로직을 캡슐화함으로써 독립적으로 테스트하고 여러 프로젝트에서 재사용하거나 팀과 공유할 수 있는 모듈식 빌딩 블록을 생성할 수 있습니다.
Python에서 함수를 정의하려면 `def` 키워드를 사용하고 그 뒤에 설명적인 함수 이름, 괄호 `()`, 콜론 `:`을 사용합니다. 이 정의 아래에 들여쓰기된 코드는 모두 기능 블록에 속합니다. 함수는 해당 이름으로 명시적으로 호출되는 경우에만 실행됩니다.
함수는 매개변수(인수라고도 함)를 통해 데이터를 받아들일 수 있습니다. 함수 정의의 괄호 안에 나열된 변수입니다. 정확한 순서로 전달되어야 하는 위치 인수를 요구하거나 기본값과 함께 키워드 인수를 사용하여 유연한 함수 호출을 허용할 수 있습니다. 예를 들어 `defcalculate_tax(price, rate=0.05):`를 사용하면 호출자가 `rate` 인수를 생략하고 기본값을 5%로 설정할 수 있습니다.
마지막으로 함수는 일반적으로 `return` 문을 사용하여 호출자에게 데이터를 다시 보냅니다. 'return'이 실행되면 함수가 즉시 종료되고 지정된 값을 다시 전달합니다. Python에서는 쉼표로 구분된 여러 값을 반환할 수도 있으며, Python은 이를 자동으로 튜플로 묶습니다. 함수 범위(함수 내부에서 생성된 변수에 외부에서 접근할 수 없다는 규칙)를 이해하는 것은 버그가 발생하기 쉬운 상태 변화를 방지하는 데 필수적입니다.
코드 및 실행 출력
다음은 가격에 적용되는 세금을 계산하고 매개변수와 반환 값을 보여주는 간단한 함수입니다.
def calculate_total(price, tax_rate=0.08):
"""
Calculates the final price after applying tax.
"""
tax_amount = price * tax_rate
total = price + tax_amount
return total
print(calculate_total(100.00))
print(calculate_total(50.00, tax_rate=0.10))108.0
55.0단계별 구현
- 복잡한 수학 공식 캡슐화
- 백엔드 비즈니스 로직에서 UI 로직 분리
- 팀 협업을 위한 유틸리티 모듈 생성
자주 묻는 질문
기본 인수란 무엇입니까?
기본 인수는 함수 호출 중에 인수가 제공되지 않는 경우 사용되는 값입니다.
함수가 여러 값을 반환할 수 있나요?
예, Python에서는 함수가 쉼표로 구분하여 여러 값을 반환할 수 있습니다. 내부적으로는 튜플을 반환합니다.
관련 주제
권장 Python 리소스
관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.
Python에서 Lambda 함수를 사용하는 방법(익명 함수)
Python에서 람다 함수를 사용하는 방법을 알아보세요. 람다 키를 사용하여 익명 함수, 인라인 콜백 및 목록 데이터 정렬을 마스터하세요.
Python 수학 모듈 함수 치트 시트
Python 수학 표준 라이브러리에 대한 빠른 참조 가이드입니다. 삼각함수, 로그, 반올림 및 산술 함수를 사용하는 방법을 알아보세요.
Python 대 JavaScript: 어떤 프로그래밍 언어가 가장 좋나요?
Python과 JavaScript를 포괄적으로 비교합니다. 구문 차이점, 성능, 사용 사례(백엔드와 프런트엔드) 및 코딩 예제를 살펴보세요.