Я пытался узнать, как CPython реализуется под сценой. Замечательно, что Python на высоком уровне, но я не люблю рассматривать его как черный ящик.
Имея это в виду, как реализуются кортежи? Я посмотрел на источник (tupleobject.c), но это происходит над моей головой.
Я вижу, что PyTuple_MAXSAVESIZE = 20
и PyTuple_MAXFREELIST = 2000
, что такое сохранение и "бесплатный список"? (Будет ли разница в производительности между кортежами длиной 20/21 или 2000/2001? Что обеспечивает максимальную длину кортежа?)