본문 바로가기
실버를 위한 코딩/파이썬 연습

[파이썬 연습] 함수

by forSilver 2024. 8. 8.
반응형

파이썬 함수

함수는 특정 작업을 수행하는 코드의 묶음입니다. 파이썬에서 함수를 사용하면 코드의 재사용성과 가독성을 높일 수 있습니다. 함수의 정의, 호출, 매개변수, 반환 값 등을 살펴보겠습니다.

함수 정의

파이썬에서 함수를 정의하려면 def 키워드를 사용합니다.

def 함수이름(매개변수1, 매개변수2, ...):
    함수내용
    return 반환값

함수 호출

정의된 함수를 호출하려면 함수 이름과 괄호를 사용합니다.

함수이름(인자1, 인자2, ...)

예제

기본 함수

def greet(name):
    print(f"안녕하세요, {name}님!")

greet("철수")  # 안녕하세요, 철수님!

매개변수와 반환 값이 있는 함수

def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 8

기본값 매개변수

def greet(name, msg="안녕하세요"):
    print(f"{msg}, {name}님!")

greet("영희")            # 안녕하세요, 영희님!
greet("영희", "좋은 아침")  # 좋은 아침, 영희님!

키워드 매개변수

def greet(name, msg):
    print(f"{msg}, {name}님!")

greet(name="영희", msg="좋은 아침")  # 좋은 아침, 영희님!

가변 인자 (*args)

def add(*args):
    return sum(args)

result = add(1, 2, 3, 4, 5)
print(result)  # 15

가변 키워드 인자 (**kwargs)

def print_info(**kwargs):
    for key, value in kwargs.items():
        print(f"{key}: {value}")

print_info(name="영희", age=30, city="서울")
# name: 영희
# age: 30
# city: 서울

예제 코드

함수를 활용한 예제 코드를 작성해 보겠습니다.

예제 1: 두 수의 합을 구하는 함수

def add(a, b):
    return a + b

print(add(3, 4))  # 7

예제 2: 리스트의 최대값을 구하는 함수

def find_max(lst):
    max_value = lst[0]
    for num in lst:
        if num > max_value:
            max_value = num
    return max_value

numbers = [1, 2, 3, 4, 5]
print(find_max(numbers))  # 5

예제 3: 문자열이 회문인지 확인하는 함수

def is_palindrome(s):
    return s == s[::-1]

print(is_palindrome("racecar"))  # True
print(is_palindrome("hello"))    # False

실습 과제

  1. 주어진 숫자가 소수인지 판별하는 함수 is_prime을 작성하세요.
  2. 주어진 리스트에서 짝수만 반환하는 함수 get_even_numbers를 작성하세요.
  3. 주어진 문자열에서 모음의 개수를 세는 함수 count_vowels을 작성하세요.

실습 과제 모범답

과제 1:

과제 2:

과제 3: