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.