当我的程序运行引发异常的行时,有没有办法启动IPythonshell或提示?我最感兴趣的是上下文、变量以及引发异常的范围(和子范围)。类似于VisualStudio的调试,当抛出异常但未被任何人捕获时,VisualStudio将停止并为我提供调用堆栈和每个级别存在的变量。你认为有办法使用IPython获得类似的东西吗?编辑:启动IPython时的-pdb选项似乎没有达到我想要的效果(或者我可能不知道如何正确使用它,即完全有可能)。我运行以下脚本:deffunc():z=2g='b'raiseNameError("Thiserrorwillnotbecaught,butIPythonst
关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我的代码中有很多错误。因此,我希望能够在一开始就将它们最小化,或者在代码执行之前看到尽可能多的错误。这可能吗?如果可以,我该怎么做? 最佳答案 如果您遇到语法问题,可以尝试使用语法高亮的编辑器。在您对一门语言有感觉之前,不会突然出现简单的错误。最简单的调试形式就是插入一些打印语句。更高级(和可扩展)的方法是使用logging来自标准库的模块。交互式解
关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我的代码中有很多错误。因此,我希望能够在一开始就将它们最小化,或者在代码执行之前看到尽可能多的错误。这可能吗?如果可以,我该怎么做? 最佳答案 如果您遇到语法问题,可以尝试使用语法高亮的编辑器。在您对一门语言有感觉之前,不会突然出现简单的错误。最简单的调试形式就是插入一些打印语句。更高级(和可扩展)的方法是使用logging来自标准库的模块。交互式解
如何在Python中禁用断言?也就是说,如果一个断言失败,我不希望它抛出一个AssertionError,而是继续进行。我该怎么做? 最佳答案 #HowdoIdisableassertionsinPython?有多种方法会影响单个进程、环境或单行代码。我分别演示。对于整个过程使用-O标志(大写O)禁用进程中的所有断言语句。例如:$python-Oc"assertFalse"$python-c"assertFalse"Traceback(mostrecentcalllast):File"",line1,inAssertionError
如何在Python中禁用断言?也就是说,如果一个断言失败,我不希望它抛出一个AssertionError,而是继续进行。我该怎么做? 最佳答案 #HowdoIdisableassertionsinPython?有多种方法会影响单个进程、环境或单行代码。我分别演示。对于整个过程使用-O标志(大写O)禁用进程中的所有断言语句。例如:$python-Oc"assertFalse"$python-c"assertFalse"Traceback(mostrecentcalllast):File"",line1,inAssertionError
对于我的调试需求,pdb已经很不错了。但是,如果我可以进入ipython,那将是much更酷(并且很有帮助)。这可能吗? 最佳答案 有一个ipdb将iPython嵌入标准pdb的项目,因此您可以这样做:importipdb;ipdb.set_trace()它可以通过通常的pipinstallipdb安装。.ipdb很短,所以除了easy_installing,你还可以创建一个文件ipdb.py在你的Python路径的某个地方,并将以下内容粘贴到文件中:importsysfromIPython.DebuggerimportPdbfro
对于我的调试需求,pdb已经很不错了。但是,如果我可以进入ipython,那将是much更酷(并且很有帮助)。这可能吗? 最佳答案 有一个ipdb将iPython嵌入标准pdb的项目,因此您可以这样做:importipdb;ipdb.set_trace()它可以通过通常的pipinstallipdb安装。.ipdb很短,所以除了easy_installing,你还可以创建一个文件ipdb.py在你的Python路径的某个地方,并将以下内容粘贴到文件中:importsysfromIPython.DebuggerimportPdbfro
如何在Python脚本中获取文件名和行号?正是我们从异常回溯中获得的文件信息。在这种情况下不会引发异常。 最佳答案 感谢mcandre,答案是:#python3frominspectimportcurrentframe,getframeinfoframeinfo=getframeinfo(currentframe())print(frameinfo.filename,frameinfo.lineno) 关于python-Python脚本的文件名和行号,我们在StackOverflow上找
如何在Python脚本中获取文件名和行号?正是我们从异常回溯中获得的文件信息。在这种情况下不会引发异常。 最佳答案 感谢mcandre,答案是:#python3frominspectimportcurrentframe,getframeinfoframeinfo=getframeinfo(currentframe())print(frameinfo.filename,frameinfo.lineno) 关于python-Python脚本的文件名和行号,我们在StackOverflow上找
所以我开始有点像Python,但我遇到了麻烦erm...运行它。哈哈我现在正在使用IDLE,但它没有任何用处,因为您一次只能运行几行。我还使用KomodoEdit来创建实际的.py文件。我的问题是,如何运行.py文件来测试实际程序?我使用的是Windows7,并且KomodoEdit5作为我的IDE。在Komodo中按F5根本没有任何作用。 最佳答案 我很高兴你问!我只是在解释这件事inourwikibook(这显然是不完整的)。我们正在与Python新手合作,并且必须帮助一些人完成您的要求!Windows中的命令行Python:在