python3 - 输入的数据类型()

时间:2013-01-28 22:33:34

标签: input python-3.x

我需要为对象分配用户提供的整数值。我的格式如下:

object = input("Please enter an integer")

以下打印测试...

print(type(object))
print(object)

...返回<class 'str'>和'1'。有没有办法将'object'的数据类型设置为用户输入值的数据类型? IOW,如果object = 1,则输入(object)= int?我知道我可以使用以下命令将输入​​的数据类型设置为int:

object = int(input("Please enter an integer"))

在这种情况下,如果用户未提供int,则控制台会引发回溯错误并且程序崩溃。我宁愿测试对象是否实际上是一个int;如果没有,使用我的程序打印错误语句并递归抛出上一个提示。

2 个答案:

答案 0 :(得分:2)

while True:
 try:
  object = int(input("Please enter an integer"))
  break
 except ValueError:
  print("Invalid input.  Please try again")
print(type(object))
print(object)

答案 1 :(得分:0)

您始终可以捕获“追溯错误”并替换您自己的错误处理。

user_input = input("Please enter an integer")
try:
    user_number = int(user_input)
except ValueError:
    print("You didn't enter an integer!")