더북(TheBook)

이제 키워드 인자의 순서는 프로그래머가 함수를 호출할 때 사용한 인자 순서와 항상 일치한다.

def my_func(**kwargs):
    for key, value in kwargs.items():
        print(f'{key} = {value}')
        
my_func(goose='gosling', kangaroo='joey')

>>>
goose = gosling 
kangaroo = joey

클래스도 인스턴스 딕셔너리에 dict 타입을 사용한다. 예전 파이썬 버전에서는 object 필드가 난수 같은 동작을 보였다.

# Python 3.5
class MyClass:
    def __init__(self):
        self.alligator = 'hatchling'
        self.elephant = 'calf'
        
a = MyClass()
for key, value in a.__dict__.items():
    print('%s = %s' % (key, value))

>>>
elephant = calf
alligator = hatchling
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.