Como definir constante em Python
Neste artigo você vai aprender como definir constante em Python, também para que servem as constantes no Python e como devemos utilizá-las
Python não tem um tipo de constante nativo: por ser uma linguagem dinâmica, qualquer valor pode ser reatribuído enquanto o código roda. Na prática você define uma constante por convenção, escrevendo o nome todo em maiúsculas com as palavras separadas por underline (o famoso UPPER_SNAKE_CASE), como recomenda a PEP 8, por exemplo TOTAL_MAXIMO = 100. Desde o Python 3.8 dá pra ir além e marcar o nome com o typing.Final (ex: MAX_SIZE: Final = 1024), que sinaliza que aquele valor não deve ser reatribuído. Só tem um detalhe importante: o Final é verificado apenas por checadores de tipo estáticos, tipo o mypy, ele não bloqueia a reatribuição em tempo de execução, então o código roda mesmo se a regra for quebrada
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 120 aulas
- 4 projetos
- 9h 48min

Fala programador(a), beleza? Bora aprender mais sobre constantes na linguagem Python!
Na verdade ainda não é possível criar uma constante em Python como em outras linguagens, onde seu valor não é alterado
Pelo menos não no ano que escrevo este artigo hehe
Porém na documentação, caso você opte por criar uma variável com sintaxe de constante, há algumas instruções a serem seguidas
Todas as letras da variável que servirá como constante devem ficar uppercase (maiúsculas)
E também se houver mais de uma palavra elas devem ser separadas por underline
Veja dois exemplos:
CONSTANTE = 1 CONSTANTE_DOIS = 2
Esse é o padrão recomendado na documentação da linguagem Python
Você pode deixar um comentário inline explicando que aquela variável é na verdade uma constante
Obs: Talvez no futuro adicionem a instrução de constante em Python, então atualizarei este artigo conforme a documentação fornecer esta informação

VPS Hostinger para seu sistema
10% OFF extraVPS com SSD NVMe e backups semanais. O cupom MATHEUSHORADECODAR é aplicado automaticamente pelo link.
Ver planos com 10% OFF →Conclusão
Neste artigo vimos como definir constante em Python – que na verdade não existe uma sintaxe própria
E sim delimitar a variável com uma sintaxe que se assemelha as constantes de outras linguagens, como é indicado na documentação
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Explicar que desde o Python 3.8 existe o qualificador typing.Final (veio pela PEP 591) pra sinalizar que um nome não deve ser reatribuído, com exemplo real: importar Final do módulo typing e escrever MAX_SIZE: Final = 1024 (ou MAX_SIZE: Deixar CLARO o pulo do gato: o Final não impõe nada em tempo de execução, ele é checado só por verificador de tipo estático (mypy, pyright e afins), então se você reatribuir o valor o código roda do mesmo jeito, quem reclama é o type checker, não o Python rodando
Reforçar o PORQUÊ de nenhuma dessas abordagens ser uma constante ‘de verdade’: Python é dinâmico, o valor sempre pode ser reatribuído em runtime, não existe imutabilidade imposta pela linguagem. Constante em Python é convenção e sinalização, não imposição
Atualizar esse aviso: em vez de ‘talvez no futuro’, apontar que já existe uma sinalização parcial (o typing.Final), deixando claro que ela ainda não é uma constante imutável em runtime. Assim o post deixa de soar desatualizado

Crie sistemas com IA para vender
Prompts, modelos e checklists para criar e publicar seu sistema com IA e preparar a oferta para o primeiro cliente.
Quero o e-book gratuito Receba o livro e os bônus no seu e-mail.Adicionar 3 a 4 perguntas e respostas curtas cobrindo as dúvidas diretas: Python tem constante? Constante em Python é maiúscula ou minúscula? Como impedir que o valor mude? O que é o typing.Final? (respostas no bloco ‘geo’ abaixo)
Não vou fingir experiência que não tenho aqui: o material próprio que temos é sobre estrutura de repetição em Python, não sobre constante, então não tem teste de primeira mão de constante pra ancorar. O que dá pra deixar como roteiro honesto de teste pra quem quiser comprovar: criar uma variável marcada como Final (MAX_SIZE: Final = 1024), tentar reatribuir logo abaixo, rodar o script normalmente e ver que o Python executa sem reclamar, e depois passar o mypy no mesmo arquivo pra ver o checador acusar a reatribuição. Esse contraste (código roda, mas o type checker aponta) é o jeito de sentir na prática que o Final é sinalização estática, não trava de runtime
Perguntas frequentes
Python tem constante?
Nativa e imutável, não. Python é dinâmico, então o valor sempre pode ser reatribuído. O que existe é convenção (nome em maiúsculas) e o typing.Final pra sinalizar a intenção de não mudar
Constante em Python é maiúscula ou minúscula?
Maiúscula. A PEP 8 recomenda o nome todo em letras maiúsculas com as palavras separadas por underline, o UPPER_SNAKE_CASE, como em MAX_OVERFLOW ou TOTAL_MAXIMO
Como impedir que o valor de uma constante mude em Python?
Em tempo de execução, você não impede: a linguagem sempre deixa reatribuir. Dá pra marcar o nome com typing.Final pra que um verificador de tipo estático (mypy, pyright) aponte a violação, mas isso é um aviso na análise, não um bloqueio quando o código roda
O que é o typing.Final?
É um qualificador adicionado ao Python na versão 3.8 (pela PEP 591) que serve pra dizer que um nome não deve ser reatribuído. Usa assim: MAX_SIZE: Final = 1024 ou MAX_SIZE: Ele é checado só por type checkers estáticos, sem imposição em runtime
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 30min
Blog | Mais populares

Como limitar números decimais em Python?
Neste artigo vamos aprender como limitar números decimais em Python, de uma forma simples com recursos da própria linguagem. Pra limitar casas decimais em Python […]

Como inverter uma string em Python
Neste artigo você vai aprender a como inverter uma string em Python, de uma maneira simples para você utilizar em seus programas Conteúdo também disponível […]
Como programar Python [dicas e códigos iniciantes aqui]
Python é uma linguagem de programação muito popular e uma de alto nível utilizada em diferentes tipos de aplicações, como para o desenvolvimento web, em Machine […]

Obrigado, seu artigo me ajudou D+
De nada amigo! =)
Valeu pelo esclarecimento!!
de nada =)
Como fazer quando se tem um projeto grande, e você precise definir um arquivo para constantes como (constants.py) por exemplo, e tenha que usar esse arquivo como base de constantes para todo o projeto?
Eu coloquei todas as minhas constantes num arquivo .py e depois importo ele nos outros. O problema é que quando for usar uma constante, tenho que chamar cs.NOME por exemplo, ao invés de chamar só o nome da constante diretamente. Existe alguma outra forma de fazer isso melhor ou estou correto?
boa
valeu Orlando!
uma das coisas que não gosto no python é a liberalidade excessiva, existem apenas algumas convenções a serem seguidas mas no geral a linguagem não vai impedir o programador de fazer besteira. O que é péssimo para projetos em equipe