-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
**kwargs 관련 질문입니다.
20.10.06 13:39 작성 조회수 109
0
def kwargs_func(**kwargs):
for v in kwargs.keys():
print('{}'.format(v), kwargs.get(v))
print('----------')
kwargs_func(name1 = 'Lee')
kwargs_func(name1 = 'Lee', name2 = 'Park',name3 = 'Cho')
이것이 선생님이 짜주신 코드였습니다.
def info_func(**kwargs):
for i in kwargs.keys():
print('{}, {}'.format(i, kwargs.get(i)))
print('----------')
이것은 제가 비슷하게 만들어본 코드입니다.
여기서 궁금한 점은 for 문에서 왜 kwargs.keys()가 와야하는지 모르겠습니다. 그냥 kwargs를 사용하면 오류가 발생합니다.
또한 print문에서 .format(i,kwargs.get(i)))로 작성하였는데, 여기서 key 값을 출력할는 것을 i 대신에 kwargs.keys(i)로 입력했는데
오류가 발생하였습니다. 제가 알기로 kwargs.keys(i)가 key값을 출력하는 것인데 왜 오류가 발생했는지 모르겠습니다.
답변을 작성해보세요.
0
좋은사람
지식공유자2020.10.07
안녕하세요.
순환할 대상을 key로 가져오기 위해 keys를 iterable하게 받아 오는 코드 입니다.
레퍼런스를 꼭 찾아보세요.
강의에서 말씀드리지만, 항상 정답은 공식 메뉴얼에 있습니다.
keys() 메소드는 파라미터를 받지 않습니다.
keys() Parameters
keys()
doesn't take any parameters.
Syntax: dict.keys()
Parameters: There are no parameters.
답변 1