Python의 함수에서 여러 값 반환

Manav Narula 2023년10월10일
  1. 튜플을 사용하여 Python의 함수에서 여러 값 반환
  2. 목록을 사용하여 Python의 함수에서 여러 값 반환
  3. 사전을 사용하여 Python의 함수에서 여러 값 반환
  4. 클래스를 사용하여 Python의 함수에서 여러 값 반환
  5. dataclass를 사용하여 Python의 함수에서 여러 값 반환
Python의 함수에서 여러 값 반환

함수는 모든 프로그래밍 언어의 필수 부분입니다. 함수는 프로그래밍에서 특정 작업을 수행하기 위해 호출 할 수있는 코드 블록입니다. 일반적으로 함수는 값을 반환하는 데 사용됩니다. 이 값은 숫자, 문자열 또는 기타 데이터 유형이 될 수 있습니다.

이 자습서에서는 여러 값을 반환하는 함수를 만드는 다양한 방법에 대해 설명합니다. 이를 위해 사용자 정의 함수에서 목록, 사전 및 기타 개체와 같은 다른 데이터 개체를 반환합니다.

튜플을 사용하여 Python의 함수에서 여러 값 반환

쉼표로 구분 된 함수에서 값을 반환하면 튜플로 간주됩니다. 튜플은 일반적으로 괄호로 묶여 있습니다. 아래 코드에서는 Python 함수에서 튜플을 반환합니다.

def return_multi(a):
    b = a + 1
    c = a + 2
    return b, c


x = return_multi(5)
print(x, type(x))

출력:

(6, 7) <class 'tuple'>

목록을 사용하여 Python의 함수에서 여러 값 반환

Python 목록은 공통 이름과 특정 위치에 다른 항목을 저장하는 데 사용됩니다. 함수는 또한 아래와 같이 목록에서 여러 값을 반환 할 수 있습니다.

def return_multi(a):
    b = a + 1
    c = a + 2
    return [b, c]


x = return_multi(5)
print(x, type(x))

출력:

[6, 7] <class 'list'>

사전을 사용하여 Python의 함수에서 여러 값 반환

사전은 Python에서 키-값 쌍을 저장하는 데 사용됩니다. 다른 값에 할당 된 키가있는 함수에서 사전을 반환하여 훨씬 더 체계적인 형식으로 최종 출력을 얻을 수 있습니다. 다음 예를 참조하십시오.

def return_multi(a):
    b = a + 1
    c = a + 2
    return {"b": b, "c": c}


x = return_multi(5)
print(x, type(x))

출력:

{'b': 6, 'c': 7} <class 'dict'>

클래스를 사용하여 Python의 함수에서 여러 값 반환

클래스에는 다양한 데이터 멤버와 함수가 포함되어 있으며 이러한 멤버에 액세스 할 수있는 개체를 만들 수 있습니다. 클래스 구조와 데이터 멤버를 기반으로 이러한 사용자 정의 클래스의 객체를 반환 할 수 있습니다. 예를 들면 :

class return_values:
    def __init__(self, a, b):
        self.a = a
        self.b = b


def return_multi(a):
    b = a + 1
    c = a + 2
    t = return_values(b, c)
    return t


x = return_multi(5)
print(x.a, x.b, type(x))

출력:

6 7 <class '__main__.return_values'>

dataclass를 사용하여 Python의 함수에서 여러 값 반환

dataclass는 Python v3.7 이상에 추가 된 새로운 흥미로운 기능입니다. 기존 클래스와 유사하지만 주로 데이터를 저장하는 데 사용되며 모든 기본 기능이 이미 구현되어 있습니다. @dataclass데코레이터 및dataclass모듈을 사용하여 이러한 객체를 생성합니다. 아래 코드에서는 함수에서dataclass를 반환합니다.

from dataclasses import dataclass


@dataclass
class return_values:
    a: int
    b: int


def return_multi(a):
    b = a + 1
    c = a + 2
    t = return_values(b, c)
    return t


x = return_multi(5)
print(x.a, x.b, type(x))

출력:

6 7 <class '__main__.return_values'>
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - Python Function