str.isdecimal() Se é dígito decimal
Última atualização: 2026-09-22
str.isdecimal() Se é dígito decimal
str.isdecimal() retorna True se não for vazia e cada caractere for um caractere de dígito decimal (Unicode Decimal).
| Categoria | Métodos de string |
|---|---|
| Tipo | Método de tipo interno |
| Versão do Python | all |
📝 Sintaxe
str.isdecimal()
Retorno:bool. True if non-empty and every char is a decimal digit (Unicode Nd).
Modifica o original:Não (retorna um novo objeto)
▶ Exemplo
Edite o código, clique em Executar e veja o resultado no painel de saída:
Saída:
True
False
False
💡 Casos relacionados
Mais estudos de caso em breve — aguarde.
❓ Perguntas frequentes
QQual é a diferença entre isdecimal() e isdigit()?
Aisdecimal() reconhece apenas dígitos decimais (categoria Unicode Nd): '²'.isdecimal() é False enquanto '²'.isdigit() é True. isdecimal() é mais rigoroso.
QE quanto aos numerais chineses?
A'一二三'.isdecimal() é False (os numerais chineses só retornam True com isnumeric()).
QPode ser usado para testar "seguro para int()"?
ANão totalmente. Dígitos de largura total como '123'.isdecimal() são True, mas int('123') lança ValueError. Para validação rigorosa, combine com isascii().