Python의 다른 함수에 Kwargs 전달

Migel Hewage Nimesha 2024년2월15일
  1. Python의 키워드 인수
  2. Python에서 **kwargs로 함수 호출
  3. Python을 사용하여 kwargs를 다른 함수에 전달
  4. 결론
Python의 다른 함수에 Kwargs 전달

Python은 프로그램의 함수에 전달할 수 있는 두 가지 유형의 인수를 나열합니다. 키워드가 아닌 인수( **args ) 및 키워드 인수(**kwargs ).

일반적으로 파이썬 함수는 올바른 수의 인수로 호출해야 합니다. 함수가 두 개의 인수를 예상하는 경우 두 개만 전달해야 합니다.

이 기사에서는 키워드 인수를 사용하는 방법과 키워드 인수를 다른 함수에 전달하는 방법에 대해 설명합니다.

Python의 키워드 인수

일반적으로 인수는 정보를 함수로 전달합니다. 키워드 인수는 함수에 인수를 전달하는 데 사용할 수 있는 한 가지 방법입니다.

특히 Keyword Arguments를 사용하면 key = value 구문으로 인수를 보낼 수 있습니다. 다음 예를 살펴보겠습니다.

def keyword_function(fname, lname, age):
    print("first name is " + fname)


keyword_function(fname="Anne", lname="Steaven", age=27)

이 예에서는 keyword_function이라는 함수를 정의했습니다. fname, lnameage라는 세 개의 인수를 전달합니다.

따라서 이러한 인수는 프로그램에서 함수를 호출할 때 각 인수에 대해 키와 값 쌍을 사용하기 때문에 키워드 인수로 전송됩니다.

출력:

함수에 인수를 전달하여 명령문 인쇄

위 출력에서 fname 인수를 전달하는 명령문을 인쇄합니다.

Python에서 **kwargs로 함수 호출

주로 키워드 인수는 여러 인수를 알 수 없을 때 사용할 수 있습니다. 이 경우 함수 정의에서 매개변수 이름 앞에 두 개의 별표(**)를 추가하십시오.

함수에 **kwargs 매개변수가 있는 경우 가변 개수의 키워드 인수를 사전으로 허용합니다.

다음 예를 생각해 보십시오.

def animals(**kwargs):
    print(kwargs)


animals(name1="Rabbit", name2="Dog", name3="Monkey")

위 코드에는 animals라는 함수가 있습니다. 세 개의 인수를 키워드 인수로 사용하는 함수 호출인 **kwargs라는 매개변수가 있습니다.

출력:

Python에서 **kwargs로 함수 호출

두 쌍의 값과 키가 있는 사전으로 결과를 볼 수 있습니다. kwargs 인수는 관례입니다.

따라서 매개변수 이름으로 의미 있는 이름을 사용할 수 있습니다. 마찬가지로 이것은 **kwargs 매개변수를 사용하여 함수를 호출하는 방법입니다.

Python을 사용하여 kwargs를 다른 함수에 전달

암호:

def info(**kwargs):
    x = dict(name="shen", age=27, degree="SE")
    pass_func(**x)


def pass_func(**kwargs):
    for i in kwargs:
        print(i, kwargs[i])


info()

위의 코드를 사용하여 이름, 나이학위와 같은 사람에 대한 정보를 인쇄합니다. 이 프로그램은 dict 메소드를 선언하는 변수 x를 포함하는 다른 함수에 kwargs를 전달합니다.

매개변수 없이 정의된 함수 info의 예. 함수 info는 3개의 키-값 쌍을 정의하는 변수 x를 선언했으며 일반적으로 키-값 쌍은 Python의 사전 형식으로 정의됩니다.

결과적으로 dict 메서드는 키와 값의 쌍을 지정합니다. kwargs unpack 인수는 사전 유형으로 선언되므로 이 예제에서는 dict 메소드를 사용할 수 있습니다.

그런 다음 kwargs 인수를 전달하는 pass_func라는 또 다른 함수가 있습니다. 이 함수에는 kwargs 인수를 인쇄하는 for 루프가 포함되어 있으며 그 후에 kwargs 기능을 info 기능에 전달하여 x를 인쇄할 수 있습니다.

따라서 x 변수에 kwargs 인수를 사용하여 pass_func를 호출합니다. 마지막으로 pass_func 함수에서 info 함수를 호출합니다.

출력:

Python을 사용하여 kwargs를 다른 함수에 전달

결론

기사 전체에서 kwargs를 다른 함수에 전달하는 방법에 중점을 두었습니다. kwargs 인수는 각 인수에 대해 정의된 매개변수 없이 여러 변수를 가져올 수 있습니다.

kwargs 인수를 함수에 전달할 때 매개변수 이름 **kwargs와 함께 이중 별표를 사용해야 합니다. kwargs를 다른 함수에 전달할 때 먼저 두 개의 별표가 있는 매개 변수를 만든 다음 해당 함수를 다른 함수에 목적으로 전달할 수 있습니다.

Migel Hewage Nimesha avatar Migel Hewage Nimesha avatar

Nimesha is a Full-stack Software Engineer for more than five years, he loves technology, as technology has the power to solve our many problems within just a minute. He have been contributing to various projects over the last 5+ years and working with almost all the so-called 03 tiers(DB, M-Tier, and Client). Recently, he has started working with DevOps technologies such as Azure administration, Kubernetes, Terraform automation, and Bash scripting as well.

관련 문장 - Python Argument