본문 바로가기

IT/Python

05 같은 듯 다른 함수와 메서드

합/길이 쉽게 구하기

시퀀스의 합과 길이를 구하는 함수는 다음과 같습니다.

  • 원소들의 합 : sum()
  • 시퀀스의 길이 : len()

단, sum()을 사용할 때는 시퀀스 안의 원소가 모두 숫자형 자료여야합니다!

my_tuple = (3, 1, 2, 4)

print(sum(my_tuple))
print(len(my_tuple))
Copy

아래 실습을 따라해보면서 시퀀스의 합과 길이를 쉽게 구하는 방법을 익혀봅시다.

 

이렇게 해보세요!

  1. 원하는 숫자 5개가 담긴 리스트 my_list을 하나 선언해봅시다.
  2. 변수 var1를 선언하고, my_list의 을 넣어봅시다.
  3. 변수 var2를 선언하고, my_list의 길이를 넣어봅시다.
  4. 변수 var3을 선언하고, my_list의 평균을 넣어봅시다.

Tip!

평균은 (자료의 합) / (자료의 길이) 로 나타냅니다.

상단 보조자료에서 실습 해설 강의를 들을 수 있으니, 학습에 참고해보세요.

my_list =[11, 22, 33, 44, 55]
var1 = sum(my_list)
var2 = len(my_list)
var3 = var1/var2
print(var1, var2, var3)

명령이 끝난 후엔 반환! return

함수는 함수 내부에서 연산한 결과를 함수 밖으로 전달할 수 있습니다. 이를 return(반환)이라고 합니다.

def plus(a, b):
    return a+b #a+b를 반환!
        
var1 = plus(3, 4) #반환값 7을 var1에 대입
Copy

아래 실습을 따라해보면서 함수의 return을 익혀봅시다.

 

이렇게 해보세요!

  1. 함수 plus_print()을 만들어봅시다.
    • 매개변수 : a, b
    • 함수 안에서 a와 b를 더한 값을 출력
    • 반환값 없음.
  2. 함수 times_return()을 만들어봅시다.
    • 매개변수 : a, b
    • 반환값 a와 b를 곱한 결과.
  3. 함수를 작성한 후, 다음과 같이 출력되도록 코드를 작성해봅시다.
    • plus_print()으로 숫자 3과 4의 합을 출력해봅시다.
    • print()와 times_return()으로 숫자 3과 4의 곱을 출력해봅시다.
      7
      12
      Copy

Tip!

print()안에 함수와 인자를 넣으면 그 함수의 반환값을 출력합니다.

상단 보조자료에서 실습 해설 강의를 들을 수 있으니, 학습에 참고해보세요.

a = 3
b = 4

def plus_print(a, b):
    print(a+b)

def times_return(a, b):
    return a*b

plus_print(a, b)
print(times_return(a, b))

친구가 있는 함수? 메서드!

함수 중에서 특정 자료와 함께 사용되는 함수가 있습니다. 우리는 그것을 메서드라고 부릅니다.

  • 메서드 : 자료.메서드이름()
my_list = [5, 4, 3, 2, 1]

my_list.append(5) #원소를 추가하는 메서드
my_list.sort() #정렬하는 메서드
Copy

아래 실습을 따라해보면서 메서드가 무엇인지, 어떻게 사용하는지 익혀봅시다.

 

이렇게 해보세요!

  1. 대응 관계가 3개 있는 Dictionary를 만들고, 이를 변수 my_dict에 넣어봅시다.
  2. 다음 두 메서드를 이용해서, Dictionary의 Key값들을 담은 변수 var1과 Value값들을 담은 변수 var2를 만들어봅시다.
    • 딕셔너리.keys() : Dictionary형 dict의 모든 Key를 반환
    • 딕셔너리.values() : Dictionary형 dict의 모든 Value를 반환

Tip!

딕셔너리는 다음과 같이 만들 수 있습니다! 딕셔너리 = {키:값, 키:값}

상단 보조자료에서 실습 해설 강의를 들을 수 있으니, 학습에 참고해보세요.

my_dict = {1 : 'one', 2: 'two', 3: 'three'}
var1 = my_dict.keys()
var2 = my_dict.values()
print(var1)
print(var2)

인자와 매개변수, 닮은 듯 다르다!

함수를 공부하다보면 인자와 매개변수에 대한 이야기가 나옵니다. 이 둘은 비슷해 보이지만, 다른 뜻입니다.

  • 매개변수(parameter) : 함수를 정의할 때(만들 때) 넘겨받은 값을 관리하는 변수
  • 인자(argument) : 함수를 호출할 때(사용할 때) 함수로 넘겨주는 자료
def plusDouble(a, b): #이때 a, b는 매개변수!
    return 2*(a+b)

print(plusDouble(3, 4)) #이때 3, 4는 인자!
# 함수 호출시
# a = 3
# b = 4
# 로 간주
Copy

아래 실습을 따라해보면서 인자와 매개변수의 차이점을 학습해봅시다.

 

이렇게 해보세요!

  1. 함수 solve()를 만들어봅시다. 이 함수의 매개변수는 a와 b입니다.
  2. 이 함수는 a와 b를 곱한 것을 반환합니다.
  3. 이 함수에 숫자 3과 4를 인자로 넣어서 반환되는 값을 변수 var1에 넣어봅시다.
  4. 이 함수에 숫자 3과 리스트 ['Cham']을 인자로 넣어서 반환되는 값을 변수 var2에 넣어봅시다.

Tip!

함수 이름이나 원소의 대소문자 구분에 주의하세요!

상단 보조자료에서 실습 해설 강의를 들을 수 있으니, 학습에 참고해보세요.

def solve(a, b):
    return a*b
    
var1 = solve(3, 4)
var2 = solve(3, ['Cham'])
print(var1)
print(var2)
반응형