본문 바로가기
카테고리 없음

2주차 파이썬 강의 _ 파이썬의 몸통 : 함수

by 그 해 우리는 2024. 11. 28.

02. 함수 기본 배우기

스파르타 코딩 클럽

1) 함수란?

함수의 개념

  • 함수는 입력을 받아 원하는 처리를 한 후 출력을 내보내는 일련의 작업을 수행하는 코드 블록입니다.
  • 프로그램 내에서 특정한 기능을 수행하기 위해 코드를 논리적으로 그룹화하여 재사용 가능한 형태로 정의합니다.
  • 함수의 필요성
  • 코드 재사용: 반복되는 코드를 함수로 정의하여 여러 곳에서 재사용할 수 있습니다.
  • 모듈화: 프로그램을 여러 개의 작은 모듈로 나누어 개발 및 관리할 수 있습니다.
  • 유지 보수 용이성: 함수는 각각의 기능을 독립적으로 정의하므로, 수정이나 확장이 필요할 때 해당 함수만 수정하면 됩니다.
  • 가독성 향상: 함수는 코드의 의도를 명확하게 표현할 수 있으며, 복잡한 작업을 함수로 분해하여 이해하기 쉽게 만듭니다.

 

2) 간단한 계산의 함수 만들기

스파르타 코딩 클럽

평균 계산 함수

  • 이 함수는 주어진 숫자 리스트의 평균을 계산하는 간단한 데이터 분석 계산을 수행합니다.
 

3) 다양한 함수 예시

스파르타 코딩클럽

아래에는 조건문, 반복문, 리스트, 튜플, 딕셔너리 등을 활용한 다양한 함수 예시를 제시하겠습니다.

 

  1. 숫자 리스트에서 최대값을 찾는 함수
 

2. 튜플의 모든 요소를 곱하는 함수

 

 

3. 주어진 문자열에서 각 문자의 출현 빈도를 딕셔너리로 반환하는 함수

  • 1) 전역변수와 지역변수의 차이
  • 전역변수 (Global Variables)
  • 전역변수는 프로그램 전체에서 접근 가능한 변수로, 어디서든지 사용할 수 있습니다.
  • 전역변수는 프로그램이 시작될 때 생성되고, 프로그램이 종료될 때까지 메모리에 유지됩니다.
  • 전역변수는 프로그램의 어디서든지 접근할 수 있으므로, 여러 함수에서 공통적으로 사용되는 값을 저장할 때 유용합니다.
  • 하지만 너무 많은 전역변수를 사용하면 코드의 가독성이 떨어지고 디버깅이 어려워질 수 있습니다.
대표사진 삭제

사진 설명을 입력하세요.

  • 지역변수 (Local Variables)
  • 지역변수는 특정한 범위(예: 함수 내부)에서만 접근 가능한 변수로, 해당 범위를 벗어나면 사용할 수 없습니다.
  • 지역변수는 해당 범위에서 생성되고, 범위를 벗어나면 메모리에서 사라집니다.
  • 함수 내에서 정의된 변수는 해당 함수 내에서만 사용 가능한 지역변수입니다.
  • 지역변수는 함수 내에서만 사용되므로, 해당 함수에서만 유효하고 다른 함수나 코드 블록에서는 사용할 수 없습니다.
  • 지역변수는 함수가 실행될 때 생성되고, 함수가 종료되면 메모리에서 제거되므로 메모리 관리에 효율적입니다.

 

2) 인수(argument)와 매개변수(parameter)의 차이

스파르타 코딩클럽

함수를 정의할 때 매개변수(parameter)와 함수를 호출할 때 전달되는 값(argument)은 혼동하기 쉬운 개념입니다.

 

  • 매개변수(Parameter)
  • 함수를 정의할 때 함수가 받아들이는 값을 지정하는 변수입니다.
  • 함수의 헤더 부분에서 매개변수가 정의되며, 함수 내부에서 사용됩니다.
  • 함수를 정의할 때 매개변수를 정의하고, 함수가 호출될 때 매개변수에 해당하는 값을 전달받습니다.
  • 인수(Argument)
  • 함수를 호출할 때 함수에 전달되는 값입니다.
  • 함수를 호출할 때 전달되는 실제 값이며, 함수를 호출할 때마다 다를 수 있습니다.
  • 함수 호출 시 매개변수에 전달되는 값으로, 해당 값은 함수 내부에서 매개변수로 사용됩니다.
대표사진 삭제

사진 설명을 입력하세요.

 

3) 위치 인수 (Positional Arguments)란?

 

  • 함수 호출 시 전달되는 인자(argument)는 두 가지 유형이 있습니다.
  • 위치 인수(positional argument)와 키워드 인수(keyword argument)입니다.
  • 위치 전달인수는 함수 정의에서 매개변수(parameter)의 위치에 따라 전달되는 인수입니다.
  • 위치 전달인수는 인자의 값이 함수의 매개변수에 순서대로 매핑됩니다.
  • 함수 호출 시 위치 전달인수는 매개변수의 위치에 따라 전달됩니다.