В Python — нет переменных. И как теперь жить? Python Memory Management на пальцах HD

В Python — нет переменных. И как теперь жить? Python Memory Management на пальцах
00:24:44
Обнаружено блокирование рекламы на сайте

Для существования нашего сайта необходим показ рекламы. Просим отнестись с пониманием и добавить сайт в список исключений вашей программы для блокировки рекламы (AdBlock и другие).

12n.ru 19173 ролика

В Python — нет переменных. И как теперь жить? Python Memory Management на пальцах.

Да-да, в Python нет переменных. Как так вышло и что с этим делать? Как работает с оперативной памятью Python? Что такое Stack и Heap и как они используются? Какие особенности mutable и immutable данных связаны с этим?
Сочный материал для тех, кто хочет глубже понимать, как работает интерпретатор CPython, и использовать это для написания более эффективных программ.

Книжный клуб Ботаним!, где мы читаем хорошие ИТ-книги: botanim.to.digital/
Мой курс «Основы компьютерных и веб-технологий с Python»: course01.to.digital/
Telegram: t0digital.t.me

0:00 О чём пойдёт речь
0:43 Об оперативной памяти
3:12 Stack и Heap в оперативной памяти
7:19 Как использует память Python?
10:50 Неизменяемые строки
11:49 Про списки и оператор is
14:11 Про кортежи
16:15 Garbage Collector и подсчёт ссылок
20:41 Передача объектов в функции по ссылке
24:18 Выводы

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.

Telegram канал — t.me/t0digital
ВК — vk.com/digitalize.team
RuTube — rutube.ru/channel/24802975/about/
Дзен — dzen.ru/id/6235d32cb64df01e6e78c883

RSS
your zorge
18:09
Дорогой мой человек, это прекрасно, что ты разобрался с работой памяти, но от того как ты называешь (представляешь) переменную — в виде коробки или в виде бирки — переменная не перестает быть переменной. Кроме переменных и функций не только в коде, но и в мире ничего нет. Переменные существуют независимо от представлений (сознания) и действий человека… Ну а в остальном было интересно. По крайней мере ты нашел способ привлечь внимание к своему видео.
Антон Абросимов
07:19
l1, l2 = ['aaa'], ['aaa']; assert l1 is not l2 and l1[0] is l2[0]
Василий пупкин
18:08
Шикарно! Проясняет многое в языке.
Ну и к слову не зря Андрей Столяров настаивает на том что начинать програмировать с Паскаля и освоить работу с указателями в нём. Когда понимаешь что такое указатель и как из них можно собрать хотябы список гораздо проще усвоить вот это поведение пайтона.
Ильхам Эргашев
00:56
Просто капитальный красавчик
Shurick Skalkovich
21:50
У вас при подсчете ссылок на empty ошибка. Т.к. вы вызвали empty, для присвоения a и b, то там технически лежат None'ы из-за pass в теле функции. А кол-во ссылок такое из-за объявленной функции и передаче ее, как аргумент, в getrefcount, т.е 2 ссылки. Вы, наверное хотели не вызывать функции, а положить ее в переменные))
sashka sashka
16:34
Огромнейшая благодарность!
Roman
17:39
в последнем методе проще проверять так: names = names or []
pro100bro
14:01
Большое спасибо за интересную подачу, важного новичкам материала
Константин
18:27
В Пайтоне переменные есть, а на уровень ниже, т.е. в интерпретаторе их нет. На уровень ещё ниже переменные снова есть, т.к интерпретатор написан на Си. А на уровень ещё ниже переменных снова нет, там машинный код (регистру процессора без разницы что в него загрузили ). На следующих уровнях ниже, перечисляю по убыванию: логические вентилях -> транзисторах -> пн-переходах -> атомах -> кварках -----> переменных снова нет
Doing Well
00:02
Только передаем мы в функции не абстрактные какие-то непонятные ссылки, а pyobject, у которого есть refcount, ссылка на память и тип объекта, что очевидно не является эквивалентом указателя из C.

Новости

«СёрчИнформ SIEM» интегрирована с почтовым сервером RuPost Рынок DLP-систем в Центральной Азии: как законы о суверенитете данных стимулируют спрос на локальные решения «СёрчИнформ КИБ» расширил возможности «открытого контроля» для ПК на Linux «РИКИТЛАБ» представила новую модель техподдержки ИТ-инфраструктуры промышленных предприятий MWS Cloud расширяет линейку ИИ-сервисов доступом к крупнейшей опенсорсной LLM

«СёрчИнформ SIEM» интегрирована с почтовым сервером RuPost


1 день назад
«СёрчИнформ SIEM» интегрирована с почтовым сервером RuPost
«СёрчИнформ SIEM» интегрирована с почтовым сервером RuPost
Рынок DLP-систем в Центральной Азии: как законы о суверенитете данных стимулируют спрос на локальные решения
Рынок DLP-систем в Центральной Азии: как законы о суверенитете данных стимулируют спрос на локальные решения
«СёрчИнформ КИБ» расширил возможности «открытого контроля» для ПК на Linux
«СёрчИнформ КИБ» расширил возможности «открытого контроля» для ПК на Linux
«РИКИТЛАБ» представила новую модель техподдержки ИТ-инфраструктуры промышленных предприятий
«РИКИТЛАБ» представила новую модель техподдержки ИТ-инфраструктуры промышленных предприятий
MWS Cloud расширяет линейку ИИ-сервисов доступом к крупнейшей опенсорсной LLM
MWS Cloud расширяет линейку ИИ-сервисов доступом к крупнейшей опенсорсной LLM