raw_input em Python 3

Hemank Mehtani 22 outubro 2021
raw_input em Python 3

A função raw_input() pode ler uma linha do usuário. Esta função retornará uma string removendo uma nova linha final. Ela foi renomeada para a função input() no Python versão 3.0 e superior.

A diferença básica entre raw_input e input é que raw_input sempre retorna um valor de string, enquanto a função input não retorna necessariamente uma string, já que quando a entrada pelo usuário é em números, ela a considerará como um inteiro.

Às vezes, pode haver algumas exceções levantadas ao obter a entrada do usuário.

As instruções try e except são usadas para lidar com esses tipos de erros em nosso código em Python. O bloco de código dentro do bloco try é usado para verificar alguns códigos em busca de erros.

Por exemplo,

try:
    input = raw_input
except NameError:
    pass
print("Welcome to this " + input("Say something: "))

Produção:

Say something: tutorial
Welcome to this tutorial

O six fornece utilitários simples para envolver as diferenças entre qualquer versão do Python 2 e qualquer versão do Python 3.

Destina-se a oferecer suporte a código que funcione em Python 2 e 3 sem qualquer modificação.

Por exemplo,

from six.moves import input as raw_input

val1 = raw_input("Enter the name: ")
print(type(val1))
print(val1)

val2 = raw_input("Enter the number: ")
print(type(val2))
val2 = int(val2)
print(type(val2))
print(val2)

Produção:

Enter the name: Hemank 
<class 'str'>
Hemank 
Enter the number: 17
<class 'str'>
<class 'int'>
17

Observe que você deve implementar six na primeira linha do código.

Artigo relacionado - Python Input