본문 바로가기
AI Basic/Python

[Python] 02 Functions & Console IO

by iamzieun 2023. 3. 6.

포스팅 개요

본 포스팅은 파이썬에서의 함수 작성법과 input, output에 대해 정리한 글입니다. 

01 Functions

01-1 함수란 무엇인가?

  • 함수
    • 어떤 일을 수행하는 코드의 덩어리
  • 함수의 특징
    • 반복적으로 수행할 작업을 최초 한 번만 함수의 형태로 작성하면, 이후부터는 해당 함수를 호출하기만 함으로써 같은 작업을 반복할 수 있음
    • 코드를 논리적인 단위로 분리
      • 하나의 코드 = 하나의 보고서
    • 캡슐화: 세부적인 내용을 알지 못해도 인터페이스만 알면 타인의 코드를 쉽게 사용할 수 있다
  • cf. 프로그래밍에서의 함수 vs 수학에서의 함수
    • 입력 값과 출력 값으로 구성된다는 점에서 프로그래밍에서의 함수와 수학에서의 함수는 유사하다
  • cf. 함수 vs 메서드
    • 함수 function: 특정 작업을 수행하도록 구성된 것
      • 독립적, sum() 형태
    • 메서드 method: 클래스, 열거형, 구조체에 포함되어있는 함수
      • 종속적, .upper() 형태

01-2 함수의 기본 구조

  • 함수의 기본 구조
    • 매개변수 parameter: 함수에 입력으로 전달되는 값을 받는 변수
    • 인수 arguments: 함수를 호출할 때 전달하는 입력값, 매개변수에 입력하고자 하는 값
    • return이 수행되면 함수가 종료됨

01-3 입력값과 결과값에 따른 함수 형태

  매개변수 없음 매개변수 존재
반환값 없음 parameter 없이 함수 내의 수행문만 수행 parameter을 사용하여 수행문만 수행
반환값 존재 parameter 없이 수행문 수행 후 결과값 반환 parameter을 사용하여 수행문 수행 후 결과값 반환

3.1 일반적인 함수 (입력값과 결과값이 있는 함수)

  • 일반적인 함수의 기본 구조

3.2 입력값이 없는 함수: 매개변수 부분이 공란

  • 입력값이 없는 함수의 기본 구조

3.3 결과값이 없는 함수: return 생략 (print 사용)

  • 결과값이 없는 함수의 기본 구조
    • print문은 ‘수행할 문장'의 구성 요소이다

3.4 입력값도 결과값도 없는 함수: 매개변수 부분이 공란 + return 생략 (print 사용)

  • 입력값도 결과값도 없는 함수의 기본 구조

01-4 입력값이 몇 개인지 모를 경우

  • 입력값이 몇 개인지 모를 경우 함수 기본 구조
  • *매개변수는 일반 매개변수보다 뒤에 위치해야 한다
    • 함수 매개변수의 순서: 일반 매개변수 > *매개변수 > **매개변수
  • *변수 (*args): 여러 입력값들을 하나의 튜플로 저장
  • **변수 (*kwargs): 키워드 = ‘ ‘ 형태의 여러 입력값들을 하나의 딕셔너리로 저장

01-5 함수의 결과값은 언제나 하나

  • 함수는 언제나 하나의 결과값만을 반환
  • → 여러 값을 반환하고자 하는 경우 리스트 및 튜플 등으로 묶어서 결과값을 반환할 것

01-6 매개변수에 초기값 미리 설정하기

  • 초기값이 설정된 매개변수(기본값 매개변수)는 일반 매개변수보다 뒤에 위치해야 한다
    • 함수 매개변수의 순서: 일반 매개변수 > 기본값 매개변수 > *매개변수 > **매개변수

01-7 함수 안에서 선언한 변수의 효력 범위

  • 함수 안에서 선언한 매개변수는 함수 안에서만 사용될 뿐 함수 밖에서는 사용되지 않는다

01-8 함수 안에서 함수 밖의 변수를 변경하는 방법

  • return 사용: 변수 = return을 사용한 함수
  • global 명령어 사용

01-9 lambda (람다) 사용

  • lambda: 함수를 생성할 때 사용하는 예약어. def와 동일한 역할
    • lambda 예약어로 만든 함수는 return 명령어가 없어도 결과값을 반환
  • lambda를 사용한 함수의 기본 구조
  • : lambda 매개변수1, 매개변수2, ... : 매개변수를 이용한 표현식(수행식)

02 Console in/out

02-1 input()

  • input은 입력되는 모든 것을 문자열로 취급

02-2 print()

  • 큰따옴표(")로 둘러싸인 문자열은 + 연산과 동일하다
    • ex. print(”life” “is” “too short”) = print(”life” + “is” + “too short”) → lifeistoo short
  • 문자열 띄어쓰기는 콤마로 한다
    • ex. print(”life”, “is”, “too short”) → life is too short
  • 한 줄에 결괏값 출력하기
    • print 함수는 매개변수에 줄바꿈(\n)이 없어도 각 반복에 대해서 줄바꿈이 됨
    • 매개변수 end: 끝 문자 지정

 

- reference: https://wikidocs.net/book/1

  •  

'AI Basic > Python' 카테고리의 다른 글

[Python] 06 Pythonic Code  (0) 2023.03.07
[Python] 05 Python Data Structure  (0) 2023.03.07
[Python] 04 Advanced Function Concept  (0) 2023.03.07
[Python] 03 Conditions and Loops  (0) 2023.03.07
[Python] 01 Variables and Data Type  (0) 2023.03.06

댓글