在Python中指定input()类型?

Specify input() type in Python?

是否可以定义输入时间,如时间、日期、货币,或者应该手动验证?例如:

1
2
morning = input('Enter morning Time:')
evening = input('Enter evening Time:')

…我只需要在这里输入时间,如何确保用户以xx:xx格式输入,其中xx是整数。


input(在python 2.any中)将返回用户键入的任何表达式的类型。更好的方法(在python 2.any中)是使用raw_input,它返回一个字符串,并自己进行转换,如果转换失败,则捕获TypeError

python 3.any的input的工作方式与2.any的raw_input的工作方式类似,即返回一个字符串。


您不能真正强制input函数返回某种类型。最好编写某种包装器,从用户处读取一些输入,然后将其转换为应用程序的适当类型(或者在出现错误时引发异常)。

另外,正如Alex所说,最好使用raw_input作为用户输入,因为它总是以字符串形式返回输入的值。更易于管理。