所以这是一个有点奇怪的问题,但它可能很有趣!
我需要以某种方式在python中可靠地导致异常。我希望它是人为触发的,但我也愿意在我的代码中嵌入一些总会导致异常的东西。 (我已经设置了一些异常处理,并希望对其进行测试)
我一直在环顾四周,一些想法似乎被零除或沿着这些线路的东西总是会导致异常 - 有更好的方法吗?最理想的是在程序运行时模拟互联网连接的丢失......任何想法都会很棒!
玩得开心!
答案 0 :(得分:5)
是的,有:您可以明确提出自己的例外情况。
raise Exception("A custom message as to why you raised this.")
您可能希望针对网络连接丢失提出适当的异常/错误。
答案 1 :(得分:3)
您可以在Python中定义自己的例外,以便创建自定义错误以满足您的需求。您可以测试某些条件是否存在,并使用该测试的真实性来决定是否提高您的闪亮自定义异常:
class MyFancyException(Exception): pass
def do_something():
if sometestFunction() is True:
raise MyFancyException
carry_on_theres_nothing_to_see()
try:
do_something()
except MyFancyException:
# This is entirely up to you!
# What needs to happen if the exception is caught?
documentation有一些有用的例子。
答案 2 :(得分:0)
1 / 0
代码中的任何位置都会发生运行时错误,特别是在这种情况下为ZeroDivisionError: integer division or modulo by zero
。
这是通过在代码中嵌入某些东西来获得异常的最简单方法(正如您在帖子中提到的那样)。您当然可以提出自己的例外情况......取决于您的具体需求。