Tag: error handling

如何在不停止(中断)程序的情况下在Python中发出警告?

我正在处理一个问题,如何在Python中引发Warning,而不必让程序崩溃/停止/中断。 我使用以下简单的函数,只检查用户传递给它一个非零的数字。 如果用户通过一个零,程序应该警告用户,但是继续正常。 它应该像下面的代码工作,但应该使用类Warning(),Error()或Exception(),而不是手动打印出警告。 def isZero( i): if i != 0: print "OK" else: print "WARNING: the input is 0!" return i 如果我使用下面的代码并将0传递给该函数,程序崩溃并且该值永远不会返回。 相反,我想程序继续正常,只是通知用户,他通过0的function。 def isZero( i): if i != 0: print "OK" else: raise Warning("the input is 0!") return i 关键是我希望能够testing一个警告已经被unittesttesting过了。 如果我只是简单地打印出来的信息,我不能用unittest中的assertRaises来testing它。 谢谢,托马斯

iPhone核心数据“生产”error handling

我在苹果提供的示例代码中看到了如何处理核心数据错误。 即: NSError *error = nil; if (![context save:&error]) { /* Replace this implementation with code to handle the error appropriately. abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. If it is not possible to […]

如何捕获fs.readFileSync()没有文件?

在node.js中readFile()显示如何捕获一个错误,但是对于error handling的readFileSync()函数没有评论。 因此,如果我尝试使用readFileSync()时没有文件,我得到错误Error: ENOENT, no such file or directory 。 如何捕获抛出的exception? doco没有说明抛出了什么exception,所以我不知道我需要捕捉什么exception。 我应该注意到,我不喜欢通用的“捕捉每一个可能的exception”风格的try / catch语句。 在这种情况下,我希望捕获文件不存在时发生的特定exception,并尝试执行readFileSync。 请注意,我只在启动连接尝试前执行同步function,所以我不应该使用同步function的评论是不需要的:-)

为什么exception处理不好?

Google的Go语言没有任何例外的deviseselect,而Linux的名声也叫做exception废话。 为什么?

用追踪loggingexception

我怎样才能logging我的Python错误? try: do_something() except: # How can I log my exception here, complete with its traceback?

在C中有效使用goto进行错误pipe理?

这个问题其实是前段时间在programming.reddit.com上有趣的讨论的结果。 它基本上归结为以下代码: int foo(int bar) { int return_value = 0; if (!do_something( bar )) { goto error_1; } if (!init_stuff( bar )) { goto error_2; } if (!prepare_stuff( bar )) { goto error_3; } return_value = do_the_thing( bar ); error_3: cleanup_3(); error_2: cleanup_2(); error_1: cleanup_1(); return return_value; } goto这里的使用似乎是最好的方式,导致所有可能性的最干净和最有效的代码,或者至less在我看来。 引用史蒂夫McConnell在代码完成 : goto在分配资源,对这些资源执行操作,然后释放资源的例程中非常有用。 随着转到,你可以清理代码的一部分。 goto减less了您忘记在每个检测到错误的地方释放资源的可能性。 此方法的另一个支持来自本部分的“ […]

如何捕捉整数(0)?

比方说,我们有一个产生integer(0)的语句,例如 a <- which(1:3 == 5) 捕捉这个最安全的方法是什么?

只能通过htaccess在php中启用错误显示

我正在网上testing一个网站。 现在,错误没有显示(但我知道它们存在)。 我只能访问.htaccess文件。 我如何使所有错误显示使用我的.htaccess文件 编辑 我将这些行添加到我的.htaccess : php_flag display_startup_errors on php_flag display_errors on php_flag html_errors on 现在显示页面 内部服务器错误

iOS9故事板什么是未处理的动作(handleNonLaunchSpecificActions)?

我注意到在使用故事板时在iOS 9上运行我的应用程序时,在控制台中popup以下错误。 我正在使用xCode7。 这是我需要关心的吗? -[UIApplication _handleNonLaunchSpecificActions:forScene:withTransitionContext:completion:] ** unhandled action -> <FBSSceneSnapshotAction: 0x176bfb20> { handler = remote; info = <BSSettings: 0x176a5d90> { (1) = 5; }; }

PHPerror handling:die()Vs trigger_error()Vs抛出exception

关于在PHP中的error handling – 据我所知,有3种风格: die()或者exit()风格: $con = mysql_connect("localhost","root","password"); if (!$con) { die('Could not connect: ' . mysql_error()); } throw Exception样式: if (!function_exists('curl_init')) { throw new Exception('need the CURL PHP extension. Recomplie PHP with curl'); } trigger_error()风格: if(!is_array($config) && isset($config)) { trigger_error('Error: config is not an array or is not set', E_USER_ERROR); } 现在,在PHP手册中使用了所有三种方法。 我想知道的是我更喜欢哪种风格?为什么? 这三个是否互相replace,因此可以互换使用? […]