2011-06-23 31 views
3

我是一个Python的新手(在Win32上为2.7),我想知道Python发现它发现的任何错误的位置?Python在哪里会为我记录错误(从PHP迁移)

我是否需要开启某些功能,如果是的话,我该在哪里做?

或者,您是否使用shell开发并观察错误的想法?

请分享什么其他好的Python的调试/保存理智的机制,你希望你知道关于早期版本 - 或者,如果你从PHP切换也许你能告诉我什么的Python的等价物:

ini_set('error_reporting', 1); 
display_errors(); 
trigger_error(); 
var_dump(); 

Try和Exceptions看起来很相似。

我可能会偶尔偶然发现这些答案,但与此同时,这个问题正在扰乱我(没有双关语意)。

非常感谢。

+4

我不是一个网络开发人员,但一般的Python错误:Python没有PHP调用错误,它有例外。 Python将永远不会使其中的一个沉默,除非当然在代码周围有一个“try”,它引发了一个'except'子句,该子句匹配所引发的异常*并且* except之外的代码不会重新提升它。当一个异常未处理时,执行完全停止(当然不是整个Web服务器,只是请求处理程序)。当发生这种情况时,它也会默认回溯,尽管我希望大多数Web框架都能改变这种情况。 – delnan

+1

Thx,看起来像我应该停止担心,并等待,直到我采用一个框架判断由德尔南托马斯Ks答复。 – Cups

回答

4

Python开发通常在一个shell中完成,并且您可以在任何未捕获的异常上打印出完整的回溯。

如果要将错误记录到文件中,请查看logging module。您可以直接捕获异常,也可以覆盖调用未捕获错误的函数sys.excepthook。如果您正在使用框架网络开发,它可能有机制来做这种事情。