quit()函数在Canopy中不起作用,但使用终端工作

时间:2014-04-24 20:21:26

标签: enthought canopy

我正在学习python在线并使用python的(macOS)Canopy安装。课程是如何使用quit()函数和try除外。我在Canopy中遇到了这个错误:

---> 11     quit()
     13 print 'Your number is:', number
NameError: name 'quit' is not defined

-----------------这是代码:

try:
    inpt = raw_input('Enter a number: ')
    number = float(inpt)
except:
    print 'Error, please enter a numeric number'
    quit()
print 'Your number is:', number

所有代码都会打印出您的号码,但是如果您输入的不是数字,则会显示“错误,请输入数字”,而不是输入错误。

使用终端可以正常使用相同的代码。现在我想知道,我应该使用Canopy还是我错过了什么?

由于

1 个答案:

答案 0 :(得分:1)

Canopy的Python shell是IPython的QtConsole。近年来,IPython以其强大的功能和便利性风靡了科学的Python世界,并且在大多数方面它是标准Python的正确超集,但其中一些小的便利性变化可能会让初学者感到困惑。 quit是其中一个小变化。 (https://support.enthought.com/entries/25750190-Modules-are-already-available-in-the-pylab-python-prompt-but-not-in-a-script)描述了一个更常见的混淆。

在本练习中,我建议您只使用等效的quit()

替换import sys;sys.exit()