programing

파이썬에서 사전 항목을 함수 인수로 전달하는 방법은 무엇입니까?

closeapi 2023. 8. 24. 22:06
반응형

파이썬에서 사전 항목을 함수 인수로 전달하는 방법은 무엇입니까?

내 코드

첫 번째 파일:

data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}
my_function(*data)

두 번째 파일:

my_function(*data):
    schoolname  = school
    cityname = city
    standard = standard
    studentname = name

위의 코드에서, 오직 "데이터" 사전의 키들만이 전달되었습니다.my_function()하지만 저는 키-값 쌍이 통과하기를 원합니다.이것을 어떻게 수정합니까?

나는 그것을 원합니다.my_function()이런 식으로 변형되는 것

my_function(school='DAV', standard='7', name='abc', city='delhi')

그리고 이것이 제 요구사항입니다. 이것에 따라 대답하세요.

편집: 사전 키 클래스표준으로 변경되었습니다.

이와 같이 사용하려면 변수 이름을 사용하여 함수를 일반적으로 정의합니다.

def my_function(school, standard, city, name):
    schoolName  = school
    cityName = city
    standardName = standard
    studentName = name

이제 사용할 수 있습니다.**함수를 호출할 때:

data = {'school':'DAV', 'standard': '7', 'name': 'abc', 'city': 'delhi'}

my_function(**data)

당신이 원하는 대로 작동할 겁니다

추신: 다음과 같은 예약된 단어를 사용하지 마십시오.class.(예: 사용)klass대신)

*data는 인수를 튜플로 해석하고, 대신 인수를 사전으로 해석하는 **데이터를 전달해야 합니다.

data = {'school':'DAV', 'class': '7', 'name': 'abc', 'city': 'pune'}


def my_function(**data):
    schoolname  = data['school']
    cityname = data['city']
    standard = data['class']
    studentname = data['name']

다음과 같이 함수를 호출할 수 있습니다.

my_function(**data)

그냥 통과하시면 됩니다.

def my_function(my_data):
    my_data["schoolname"] = "something"
    print my_data

아니면 당신이 정말로 원한다면요.

def my_function(**kwargs):
    kwargs["schoolname"] = "something"
    print kwargs

언급URL : https://stackoverflow.com/questions/21986194/how-to-pass-dictionary-items-as-function-arguments-in-python

반응형