让我们在这里尝试一个不同的例子｡
假设我在创建一个简单的求和函数｡
是的, 我知道Python中已经有了它, 但我们只需要创建自己的｡
一个简单的一号和二号｡
在这里我们只返回数字1加上数字2｡
现在, 如果我们只是简单地做一些｡
还有一些｡
我运行了我们的程序｡
好吧, 我们先把它打印出来｡
我单击“运行”｡
我得到了一和二, 因为它只是把两个字符串加在一起｡
我们只需执行此操作, 然后单击“Run”（运行）｡
我得到一个类型错误必须是字符串而不是整数｡
那么根据我们所了解到的, 我们该如何处理呢？
我们可以在这里加一个三角形块, 然后包装这个函数.
或者我们可以将它直接构建到函数中｡
所以我可以说试试｡
这一部分｡
这里有一个退出条款｡
也就是说, 如果我们遇到任何类型的错误｡
我们会打印出来的｡
有些不对劲｡
如果我运行这个｡
我觉得有点不对劲｡
但问题是｡
你只要毫无例外地接受｡
作为一个程序员, 我阅读这篇文章, 我真的不知道到底是什么出了问题, 因为它可能是很多事情｡
因此, 一个好的做法是始终根据特定的异常捕获这些错误｡
这样你就知道错误是什么了, 你可以更详细地描述｡
所以这里我们可以说类型错误, 而这种类型错误我们可以说, 请输入数字｡
如果我再运行一次, 请输入数字｡
所以现在｡
好吧, 我会的
我的错误更具有描述性｡
我应该解决这个问题, 并确保我输入的数字｡
太棒了｡
现在, 在进行错误处理时, 一个常见的模式是将类似于以下类型的错误作为, 然后将类似于变量的操作作为｡
所以无论我们想要什么变量, 我们就说错误｡
所以我说, 嘿, 如果你发现了类型错误, 让我们在错误消息中使用error, 这样我就可以说｡
加上空气｡
所以如果我运行, 让我们在这里做一个字符串, 如果我运行｡
你看那个｡
打印错误｡
让我把它打开一点这样你就能看清楚了｡
你看那个｡
它给了我想要的空气｡
这样我就能在网上看到了｡
五个｡
在这一行中, 我得到了一个类型错误不支持的操作符, 并且得到了一个描述性错误,
所以也许我可以在输出消息中使用它｡
但如果我不想用这个, 我跑了怎么办？
好吧, 我会的
一切都恢复正常了｡
如果我做了｡
还有｡
在此单击“Run（运行）”｡
这实际上很棘手, 但是在处理上面的异常时, 我正在做｡
发生另一个例外状况｡
哦, 天哪｡
我试图处理一些事情, 但我在错误中出现了错误｡
所以这有时候很棘手｡
但它的意思是我们在这里得到的实际上是一个错误对象｡
这是Python中内置的异常｡
你不能像我一样加进去｡
相反, 我们希望使用F字符串｡
所以我做了f, 然后把错误传递给它.
所以现在｡
如果我运行这个｡
再来一次｡
请输入数字｡
不支持的操作数类型s四加int和str｡
所以我实际上得到了这个错误｡
现在, 如果我只打印这个错误, 让我们看看它是什么样子的｡
如果我单击“运行”｡
你看, 这是我们得到的空气的一部分｡
所以如果你想给予你的用户一个有意义的错误, 它是非常非常有用的｡
另一件有趣的事情是把这些错误打包在一起.
假设除法误差也为零｡
这里我们只说哎呀｡
比如说, 如果我们用数字1除以数字2, 我们先运行这个｡
如果我用1除以0, 然后运行这个程序, 我会得到哎呀｡
我也得到箍, 所以我可以处理多个错误相同的方式｡
我也可以说这里是空气, 然后打印出空气, 如果我运行这个｡
我会得到被零除的结果或者如果我做一个字符串｡
然后运行这个｡
我得到了另一个错误类型｡
所以如果你想用同样的方法处理不同的错误, 这对联合收割机不同的错误是非常有用的｡
但如果我们真的想提出自己的错误呢？
也就是说, 我们想把我们自己的错误扔到这个接受块里面｡
实际上, 我希望显示某些类型的错误｡
我们怎么能这样做呢？
让我们在下一个视频中一探究竟｡