bskyvision RSS 태그 관리 글쓰기 방명록
2021-04-29 08:40:39
728x90

오늘은 딕셔너리 객체의 한 메소드인 setdefault() 메소드의 사용법에 대해 알아보도록 하겠습니다. 

 

dict.setdefault(key, value)

 

우선 첫번째 파라미터는 필수 입력 사항이고, 두번째 파라미터는 선택 사항입니다.

 

첫번째 파라미터로 받은 것과 동일한 key가 딕셔너리 내에 존재하면 그 키의 값을 반환합니다. 만약 첫번째 파라미터로 받은 것과 동일한 key가 딕셔너리에 존재하지 않으면 None을 반환합니다. 그리고 딕셔너리에 그 key를 추가해줍니다. 만약 두번째 파라미터도 함께 전달하는데 첫번째 파라미터로 받은 것과 동일한 key가 딕셔너리에 존재하면 두번째 파라미터는 아무런 효력을 발휘하지 않습니다. 하지만, 첫번째 파라미터로 받은 것과 동일한 key가 딕셔너리에 존재하지 않는다면, 첫번째 파라미터로 받은 것은 키가 두번째 파라미터로 받은 것은 그것의 값이 됩니다.  

 

예시를 위해 다음과 같은 딕셔너리 a가 있다고 가정하겠습니다.

 

 

setdefault() 메소드에 'samsung'이라는 키를 첫번째 파라미터로 주면 어떻게 될까요?

 

 

예상하셨듯이 그 키의 값인 'korea'가 반환되었습니다. 그리고 딕셔너리 a에는 변화가 없습니다.

 

만약 이 딕셔너리에 없는 키를 전달해주면 어떻게 될까요?

 

 

None을 반환합니다. 그리고 딕셔너리 a에는 키와 값 쌍이 추가됩니다. 값은 None이 들어갔습니다. 

 

다음과 같이 두개의 파라미터를 전달해주면 첫번째 파라미터로 받은 것과 동일한 key가 있는지 확인한 후에 있다면, 그것의 값을 반환하고, 없다면 그것을 key로 하고 두번째 파라미터를 값으로 삼아서 딕셔너리에 추가해줍니다. 

 

 

관련 글

[python] 딕셔너리 객체의 get() 메소드 사용법

댓글

방문해주신 모든 분들을 환영합니다.

* 글을 읽던 중에 궁금했던 부분은 질문해주세요.

* 칭찬, 지적, 의문, 격려, 감사표현 등을 남겨주세요.

* 최대한 답변 드리도록 노력하겠습니다.

* 욕설과 광고를 담은 댓글은 가차없이 삭제합니다.


guest@이름 ~$
guest@패스워드 ~$
guest@홈페이지주소작성 ~$

guest@댓글작성 ~$




bskyvision. Designed by bskyvision.