TGViewer
Zen of Python Zen of Python @zen_of_python · 18.8K subscribers
Post #3277 3.41K
​​PEP 667 | апгрейд пространства имён

В ранних версиях Python все пространства имён были словарями. Для повышения производительности namespace была изменена, что привело к непоследовательному поведению locals() и frame.f_locals.

Вывод скрипта на изображении, мягко говоря, смущает и приводит к багам.

Суть PEP:

— Сделать пространства имён функций, классов и модулей согласованными;
— Изменения в frame.f_locals незамедлительно отражаются в соответствующих переменных и наоборот;
— Функция locals() возвращает снимок frame.f_locals в случае функции.

⚡ — бывало такое;
🌭 — не сталкивался с locals();
🤓 — ещё только учусь читать PEP.

#факты

@zen_of_python
  • 🤓 16
  • 🌭 15
More from @zen_of_python
  1. Oct 3, 2026Как вернуть значение из всплывающего окна в форму Django Admin Django Admin умеет создават…
  2. Oct 2, 2026Охрана трубопровода длиной 400 километров Камеры на столбах не заглянут за угол, дрон виси…
  3. Oct 1, 2026Как не сломать pickle собственным исключением Python Если конструктор исключения принимает…
  4. Oct 1, 2026Как выстроить защиту цепочки поставок Python Эшелонированная схема защиты начинается с соб…
  5. Sep 30, 2026Пакетная обработка в Python: где strict=True не спасает запись С Python 3.12 itertools.bat…
  6. Sep 30, 2026Как воспроизводить гонки потоков Python с помощью blanket Обычно порядок выполнения потоко…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →