В Python нет прямого аналога ключевого слова final, потому что язык является динамически типизированным. 12 Значения переменных в нём могут быть изменены в любой момент, и нет прямого способа указать, что переменная должна оставаться константой после её инициализации. 5
Однако с версии 3.8 в Python есть аннотация typing.Final из модуля typing, которая позволяет объявлять переменные и методы неизменяемыми. 1 Она не обеспечивает неизменность во время выполнения, но сигнализирует проверкам типов, что определённые элементы не следует изменять. 1
Также для достижения истинной неизменяемости в Python разработчики часто используют другие конструкции, например кортежи, именованные кортежи, замороженные наборы и пользовательские классы. 1