Muitas vezes chega um momento em que o desenvolvedor precisa verificar se o personagem inserido pelo usuário é um número. Em Python, o usuário pode fazer isso de várias maneiras, que incluem o uso de simples “declarações if-else”, ASCII equivalentes em if-else, o isdigit () método e o Isnumeric () método.
Esta postagem servirá como um guia do usuário para verificar um personagem contra números.
Método 1: Usando declarações if-else
Começando com a abordagem mais básica, o usuário pode simplesmente usar as declarações condicionais if-else para verificar contra o caractere "0" para o personagem "9". Para explicar melhor esse método, vamos dar o seguinte exemplo abaixo:
Charvar = '2'
if (charvar> = '0' e charvar <='9'):
print ("É um número")
outro:
impressão ("Não é um número")
Neste snippet de código acima:
Quando o código acima é executado, ele produz o seguinte resultado:
Da saída, pode -se ver claramente que o resultado está realmente correto. No entanto, vamos mudar o valor do Charvar Para algo que não é um número como:
charvar = 'm'
Desta vez, quando o código é executado, produz o seguinte resultado:
A saída verifica que o personagem 'm' não é um número.
Método 2: Usando códigos ASCII no if-else
Uma alternativa à comparação de string/caractere nas declarações condicionais IF-Else deve usar a comparação de código ASCII em declarações IF-ELSE. No entanto, para obter o código ASCII de um personagem em Python, o “ord ()”O método é usado. E então, para comparação, você precisa compará -lo com os valores de “48" e "57”. Para mostrar o funcionamento deste método, pegue o seguinte código:
Charvar = '7'
if (ord (charvar)> = 48 e ord (charvar) <=57):
print ("É um número")
outro:
impressão ("Não é um número")
No código acima:
Quando o código acima for executado, ele produzirá o seguinte resultado no terminal:
Após essas declarações if-else, o usuário também pode usar o método interno, que será coberto a seguir.
Método 3: Usando o método iSdigit ()
O método iSdigit () pode ser aplicado a uma string ou uma variável de caractere com a ajuda de um operador de ponto e retornará “verdadeiro" ou "falso”, Dependendo se o personagem é um número ou não. Para este método, basta pegar o código abaixo:
Charvar = '7'
Imprimir (Charvar.isdigit ())
Quando este código é executado, ele produz o seguinte resultado no terminal:
Isso significa que o charvar é realmente um número. No entanto, anote a limitação do método iSdigit () que ele não pode ser usado para deduzir inteiros negativos.
Método 4: Usando o método isnumeric ()
Com trabalho muito semelhante a Isdigit (), o método isnumeric () pode ser usado para verificar se um caractere dentro de uma variável é um número ou não. Ao contrário do método iSdigit (), o método isnumeric () também pode ser usado para detectar valores de número inteiro negativo. Para testar o funcionamento do método isnumeric (), basta usar o seguinte código:
Charvar = '4'
Imprimir (Charvar.isnumeric ())
O código produzirá o seguinte resultado:
O resultado verifica que um personagem é realmente um número.
Método de bônus: Usando o tipo de fundição e manuseio de erros
Quando uma conversão do tipo inválida é feita, o programa é um erro e trava. O acidente pode ser evitado usando o manuseio de erros dentro do “Try-CatchBlocks. Para usar essa abordagem, use o seguinte código:
new_str = '1'
tentar:
int (new_str)
print ("É um número")
Exceto ValueError:
impressão ("Não é um número")
Neste snippet de código curto:
Quando este código for executado, ele produzirá o seguinte resultado no terminal:
Isso se tratava de verificar se um personagem é um número ou não em Python.
Conclusão
O usuário pode verificar facilmente se um caractere é ou não um número ou não usando declarações condicionais if-else, métodos internos e tipo de fundição com uma técnica de manuseio de erros. Para as declarações condicionais if-else, basta usar a condição para verificar os caracteres 0 a 9 ou seu código ASCII. Para os métodos internos, basta aplicá-los à variável do personagem usando um operador de ponto.