고양이 여름이의 지식채널
[Python] 파이썬 함수 문법 (가변 매개변수, 람다 함수) 본문
함수는 프로그램에서 어떤 작업을 수행하는 코드의 묶음입니다. 함수를 사용하면 반복적으로 사용되는 코드를 간략하게 작성할 수 있어서, 코드의 재사용성과 유지보수성을 높일 수 있습니다.
기본 문법
파이썬에서 함수를 정의할 때는 def 키워드를 사용합니다. 함수 이름은 변수와 마찬가지로 소문자와 언더바를 혼용해서 작성하며, 매개변수를 정의할 수 있습니다. 매개변수는 함수를 호출할 때 전달되는 값을 받아들입니다.
def add(x, y):
result = x + y
return result
result = add(3, 5)
print(result)
## 결과는 8
가변 매개변수 함수 (가변 인자)
가변 매개변수는 함수를 정의할 때, 매개변수의 개수를 고정하지 않고, 필요에 따라 유동적으로 매개변수를 추가할 수 있게 만들어주는 기능입니다. 이 기능을 사용하면 함수 호출 시 매개변수의 개수를 다양하게 지정할 수 있어서, 함수의 재사용성을 높이고 코드의 유연성을 증가시키는 데에 큰 도움을 줄 수 있습니다.
변수명 앞에 * 키워드를 사용합니다.
def add(*args):
result = 0
for num in args:
result += num
return result
###################
def calculate_total_price(*items):
total_price = 0
for item in items:
item_name, item_count, item_price = item
total_price += item_count * item_price
return total_price
첫번째 예시는 add 함수에 *args라는 가변 매개변수를 추가한 걸 볼 수 있습니다. 그리고, args 안에 전달된 값을 모두 더해서 result에 저장한 다음, 이를 반환하는 코드입니다.
이제 add 함수를 호출할 때, 매개변수의 개수가 다양하게 지정할 수 있게 되었습니다.
예를 들어, add(1, 2, 3) 처럼 매개변수를 3개 전달할 수도 있고, add(1, 2, 3, 4, 5) 처럼 매개변수를 5개 전달할 수도 있습니다. 그리고, 가변 매개변수는 단순히 숫자뿐만 아니라, 문자열, 리스트, 튜플 등 다양한 타입의 값을 전달할 수 있어, 이를 활용하면, 더욱 다양하고 유용한 함수를 만들어낼 수 있습니다.
두번째 예시에서 calculate_total_price 함수를 호출할 때, 상품 정보를 다양하게 전달할 수 있도록,
예를 들어, calculate_total_price(("사과", 3, 1000), ("바나나", 2, 500), ("딸기", 1, 2000)) 처럼
상품 정보를 튜플로 묶어서 전달할 수 있습니다.
람다 함수 (lambda)
람다 함수란, 이름 없는 함수를 말하며. 함수를 선언하고 이름을 붙이는 것이 아니라, 한 줄로 간단하게 함수를 작성하고, 이를 변수에 저장하거나 바로 사용할 수 있는 기능입니다.
add = lambda x, y: x + y
람다 함수는 lambda 키워드를 사용해서 작성할 수 있습니다.
x와 y라는 두 개의 매개변수를 받아들여서, 그 둘을 더해서 결과를 반환하는 함수입니다.
이제 함수를 보다 유연하고 다양하게 만들 수 있으며, 여러분도 이번에 배운 내용을 적극적으로 활용해서 유용한 함수를 만들어보길 바랍니다.
[Python] 파이썬 데이터 타입(리스트, 튜플, 딕셔너리)
[Python] 파이썬 데이터 타입(리스트, 튜플, 딕셔너리)
파이썬에서는 다양한 데이터 타입을 제공합니다. 대표적인 데이터 타입으로는 리스트, 튜플, 딕셔너리가 있습니다. 리스트 (list) 리스트는 대괄호 [ ] 로 둘러싸인 값들의 목록입니다. 각 값들은
summer-cat93.tistory.com