我正在从windows命令提示符(windows 8.1, python 3.4.3 64位)运行python程序。在排除input()在IDLE中与cmd.exe中不为我工作的原因时,我发现虽然IDLE正确处理input()的结果(即作为str类型),但cmd.exe处理输入错误。具体来说,cmd.exe根据给定的类型存储值:数字存储为int类型,如果给定float类型,则存储为float类型,不带引号的字符串将引发NameError,带引号的值将存储为str类型。为什么cmd.exe会错误地处理input() ?下面是我用来测试的测试程序。
def input_tester():
x = input("Input: ")
print(x, type(x))
while True:
input_tester()
我想添加这个作为评论,但它不会让我,因为我的代表,我建议尝试eval(input())
代替你的input()
。看看是否有帮助