导致python 3.4.3 IDLE和windows shell input()不一致



我正在从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()。看看是否有帮助

相关内容

  • 没有找到相关文章

最新更新