반응형
파이썬에서 변수의 범위(scope)와 함수 안의 함수, 그리고 람다 함수에 대해 설명하고 예시 코드를 제공하겠습니다.
1. 지역변수(Local Variables)와 전역변수(Global Variables):
- 지역변수: 함수 내부에서 선언된 변수로, 함수가 호출될 때 생성되고 함수가 종료되면 소멸합니다. 함수 외부에서는 해당 변수에 접근할 수 없습니다.
- 전역변수: 함수 외부에서 선언된 변수로, 프로그램 전체에서 접근 가능합니다. 함수 내부에서 전역 변수를 사용할 수 있지만, 수정하려면 global 키워드를 사용해야 합니다.
# 전역변수 선언
global_var = 10
def example_function():
# 지역변수 선언
local_var = 5
print("지역변수 local_var:", local_var)
print("전역변수 global_var (함수 내부에서 사용 가능):", global_var)
# 함수 호출
example_function()
print("전역변수 global_var (함수 외부에서 사용 가능):", global_var)
2. 함수 안의 함수 (Nested Functions):
- 파이썬에서 함수 안에서 또 다른 함수를 정의할 수 있습니다. 이러한 함수를 중첩 함수 또는 내부 함수라고 합니다.
def outer_function(x):
def inner_function(y):
return x + y
return inner_function
# 함수 안의 함수 호출
result = outer_function(10)
print(result(5)) # 출력: 15
3. 람다 함수 (Lambda Functions):
- 람다 함수는 익명 함수로, 한 줄로 간단한 함수를 정의하는데 사용됩니다. lambda 키워드를 사용하여 생성하며, 이름이 없는 간단한 함수를 만들 때 주로 사용합니다.
# 람다 함수로 두 수를 더하는 함수 정의
add_numbers = lambda x, y: x + y
# 람다 함수 호출
result = add_numbers(3, 5)
print(result) # 출력: 8
- 람다 함수는 간단한 함수를 간결하게 표현할 때 유용합니다. 주로 map(), filter(), sorted()와 같은 함수와 함께 사용되어 편리하게 작업할 수 있습니다.
이러한 개념들을 이해하고 잘 활용하면 파이썬에서 더욱 간결하고 효율적인 코드를 작성할 수 있습니다. 함수와 변수의 범위를 제대로 이해하고, 중첩 함수와 람다 함수를 활용하는 능력은 파이썬 프로그래밍의 중요한 부분입니다. 이를 통해 코드의 가독성과 유지보수성을 향상시키고, 작업을 더욱 효율적으로 수행할 수 있습니다.
반응형
'Python > 파이썬 기초' 카테고리의 다른 글
파이썬 내장 함수 (range, min, max, sum, sorted, zip) (0) | 2023.07.28 |
---|---|
파이썬 내장 함수 (print, input, len, type, int, float, str) (0) | 2023.07.28 |
파이썬 함수 (def) (0) | 2023.07.27 |
파이썬 불 (bool) (0) | 2023.07.27 |
파이썬 집합 (set) (0) | 2023.07.26 |