А что такое del?
Apr. 24th, 2023 02:01 pmЕсли долго вглядываться в Rust, то Python начнёт вглядываться в тебя.
Что такое del? Что именно оно удаляет? Переменную? Значение? Если оно удаляет значение, то почему я не могу удалить значение?
>>> a=[None]
>>> del(a[0])
>>> del None
File "", line 1
del None
^^^^
SyntaxError: cannot delete None
Если я делаю поверхностное копирование через a=[1,2]; b=a, то del a не удаляет b, но del a[0] удаляет элемент из b. При этом, если в массив положить файловый хэндлер, то он будет закрыт при del a[0], но при этом мы не удаляем значение (иначе бы a=[None]; del a[0] приводило бы к ошибке), но при этом файловый хэндлер закрывается...
Если бы мы говорили про ссылки, мне было бы всё полнятно. Но в питоне типа-нет-ссылок. А что есть? У питона вообще есть модель памяти?
Когда я делаю del (a[0]), что такое a[0]? Placement expression? В python нет placement expression (aka l-value).
Мне надо срочно снижать awareness, иначе у меня очень сильно растёт Stress и падает Control.
Что такое del? Что именно оно удаляет? Переменную? Значение? Если оно удаляет значение, то почему я не могу удалить значение?
>>> a=[None]
>>> del(a[0])
>>> del None
File "
del None
^^^^
SyntaxError: cannot delete None
Если я делаю поверхностное копирование через a=[1,2]; b=a, то del a не удаляет b, но del a[0] удаляет элемент из b. При этом, если в массив положить файловый хэндлер, то он будет закрыт при del a[0], но при этом мы не удаляем значение (иначе бы a=[None]; del a[0] приводило бы к ошибке), но при этом файловый хэндлер закрывается...
Если бы мы говорили про ссылки, мне было бы всё полнятно. Но в питоне типа-нет-ссылок. А что есть? У питона вообще есть модель памяти?
Когда я делаю del (a[0]), что такое a[0]? Placement expression? В python нет placement expression (aka l-value).
Мне надо срочно снижать awareness, иначе у меня очень сильно растёт Stress и падает Control.
no subject
Date: 2023-04-24 04:24 pm (UTC)Это выглядит смешно, конечно. Раст я уже забыл. Там есть сильная логика, но ее надо помнить.
Никакой доступной населению модели памяти в Питоне, конечно, нет. Т.е., конечно, она есть - Гвидо же как-то имплементировал. Но монады там точно нету. Гвидо сказал.
no subject
Date: 2023-04-24 05:12 pm (UTC)no subject
Date: 2023-04-24 05:13 pm (UTC)no subject
Date: 2023-04-24 05:23 pm (UTC)Как я понимаю,
del— это синтаксический сахар над__delattr__,__delitem__,locals()иglobals().Ссылки в питоне есть и о них явно говорится в Language Reference. См., например, вхождения слова reference в §3 Data model.
no subject
Date: 2023-04-24 05:34 pm (UTC)