您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为什么在我仅按Enter键时input()会给出错误?

为什么在我仅按Enter键时input()会给出错误?

对于Python 2,您raw_input不需要input。前者会读一行。后者将读取一行并尝试执行它,如果您不希望代码被输入数据的人破坏,则不建议这样做。

例如,他们可以按照以下示例执行调用任意函数的操作:

def sety99():
    global y
    y = 99

y = 0
input ("Enter something: ")
print y

如果您在Python 2下运行该代码并输入sety99(),则99即使您的代码(在其正常执行流中)没有刻意将其设置y为除零以外的任何值(在函数中也是如此,但该函数永远不会),输出仍将由您的代码明确调用)。这样做的原因是该input(prompt)呼叫等同于eval(raw_input(prompt))

详细信息请参见此处

请记住,Python 3可以解决此问题。此处输入函数的行为符合您的预期。

其他 2022/1/1 18:37:33 有488人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶