함수와 딕셔너리 공부하다가 궁금한게 있어서 질문드립니다.

def add_dict ( dic = {} , key = "", value = "" ) : 와 같이 파라미터를 기본값으로 함수를 정의하고

add_dict ( "name" , "Kim" ) 과 같이 dic 을 따로 선언하지 않고 key 와 value 값만 선언했을 때

" dic의 값을 선언해주세요. " 와 같이 print 문을 출력하고자 합니다.
이럴 때 add_dict 함수 안에 어떤 조건을 만들어야 할까요 ?

rhdtn311 416

2020년 8월 26일 12:51 오후

목록으로
2개의 답변이 있습니다. 1 / 1 Page

if not len(dic):
print('선언해주세요')

이렇게 하면 되지 않을까요?

singleton

2020년 8월 26일 1:54 오후

다음처럼 함수를 선언하시면..

def add_dict ( dic = {} , key = "", value = "" ) :

add_dict ( "name" , "Kim" ) 으로 호출시 dic에 "name"이 key에는 "Kim"이 value에는 디폴트값인 "" 이 대입됩니다.
의도했던 것과는 다르게 될 거에요.

정확히 호출하려면 다음처럼 매개변수를 지정해서 호출하셔야 합니다.

add_dict(key="name", value="kim")

그리고 dic이 있는지 없는지는 다음처럼 체크하시면 됩니다.

def add_dict ( dic = {} , key = "", value = "" ) :
    if not dict:
        print("dic의 값을 선언해주세요. ")

박응용

M 2020년 8월 26일 5:35 오후