Массивы со строкой в python

Если массив arr содержит строку, то будут ли различаться значения, которые вернут функции sizeof() и strlen()?​


Ответы (1 шт):

Автор решения: RuslanZanevskiy

sys.getsizeof() возвращает сколько занимает места объект в памяти, в то время как len() возвращает длинну строки. Т.к. в python строка это тоже объект то она даже не имея символов занимает место в памяти. Поэтому возвращаемый результат будет обязательно отличаться. Еще sys.sizeof() зависит от символов которые содержит строка, например русские символы будут занимать больше памяти из-за кодировки. Например:

>>> getsizeof('')
25
>>> getsizeof('test')
29
>>> getsizeof('тест')
46
→ Ссылка