4
list
은 목록을 확장하는 데 필요한 시간을 최적화하기 위해 공간의 큰 덩어리로 초기화하는 것으로 알려져 있습니다 (평균적으로 배열과 같은 새 목록을 만들 필요가 없습니다).파이썬은 목록보다 공간을 효율적으로 설정합니까?
약 set
?
list
때문에 다음과 같은 구조로 인해 공간이 낭비됩니다. tuple
은 불변이므로 더 많은 공간을 절약 할 수 있음을 이해합니다. set
과 동일하게 변경할 수 있습니까?
set([ 1, 2, 3])
재미 있습니다. 어떤 이유로 든 더 많은 것을 지켜야하는 것처럼 보입니다. – User007
[PySetObject] (https://github.com/schmir/python/blob/2.7/Include/setobject.h#L34) 대 [PyListObject] (https://github.com/schmir/python/blob/2.7) /Include/listobject.h#L22) – soulseekah
빠른 (아마도 로그) 멤버십 테스트를 얻으려면 더 많은 메모리가 필요합니다. 목록에있는 회원 테스트는 분명히 시간에 선형입니다. – liori