Если я правильно понимаю, словари обмена ключами сделают так, чтобы, если у нас есть множество экземпляров объекта, у нас есть таблица общих ключей, и каждый экземпляр тогда имеет массив значений.
Что делает sys.getSizeof < /code> мера, например ,::
>>
Код: Выделить всё
import sys
class Property:
def __init__(self, v0, v1, v2, v3, v4):
self.a = v0
self.b = v1
self.c = v2
self.d = v3
self.e = v4
colors = Property('blue', 'orange', 'green', 'yellow', 'red')
sys.getsizeof(vars(colors)) # 296 (Python 3.12.5)
Что это относится 296, ссылается ли он на таблицу общих ключей + массив значений экземпляра, или просто массив значений экземпляра? это то, что если я заменяю self.b self.bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, Я получаю такой же размер? Это потому, что в обоих случаях я получаю только размер указателей на эти струны, а не самим струны? Но тогда, если я помесчу целое число, я должен увидеть разницу (если они не в штучке, если это вещь в Python?), А я нет?
Кроме того, почему этот массив намного больше в Python 3.12.5 по сравнению с Python 3.10.11
(104 в Python 3.10.11, 296 в Python 3.12.5) ? Было ли способность sys.getSizeof () изменилось между этими двумя версиями или изменилась реализация словарей между этими двумя версиями?
Подробнее здесь:
https://stackoverflow.com/questions/796 ... of-measure