을받지 때 사용 기본값은이 나는 collections.defaultdict
수익 내가 그것을 설정할 때 객체를 구축 기본 만들 수있는 방법 ...파이썬`defaultdict` : 설정,하지만
foo = defaultdict(list)
foo[3].append('dsafdasf')
...하지만 내가 접근하려고 할 때?
try:
for word in foo[None]:
print(word)
except KeyError:
pass
나는 파이썬이'__getitem__'과'__setitem__' 함수를 가지고 있기 때문에 가능하다고 생각했습니다. –
@PaulManta 두 가지를 모두 가지고 있지만 여기서는'__getitem__' 만 사용하고 있습니다. 당신의 예제에서'foo [3]'와'foo [None]'은 모두 dict 엔트리에 접근하고 있습니다; 'foo [3] = ... '과 같은 것을하면'__setitem__'이 호출됩니다. – lvc