python - python中的try语句放在哪里

标签 python try-catch

1我正在学习 python 并且发现很难理解在哪里放置 try 和 except 语句

def divide (n1, n2):
    try:
        d = n1/n2
    except :
        print("Wrong")

然后除以 (10,0) 产生正确的“错误”

但是如果我把 try 放在函数的顶部,它就不起作用

try:
    def divide (n1, n2):
        d = n1/n2
except :
        print("Wrong")

然后 divide(10,0) 产生常规回溯错误。

为什么 except 在第二个例子中不起作用?

最佳答案

这是因为如果你不在 try-except 部分运行该函数,它总是会通过,因为一个函数将始终在不被调用的情况下运行,如果你在 try-except 中调用它,它将运行:

try:
    def divide (n1, n2):
        d = n1/n2
    print(divide(0,0))
except :
    print("Wrong")

它将给出:

Wrong

但在所有解决方案中,您排名第一的解决方案是最好的。

关于python - python中的try语句放在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56284941/

相关文章:

ios - UITableView reloadData 和@catch block

python - Python 中的简单线程示例

python - 如何通过python将markdown标签替换为html?

c++ - 仅当某个编译时表达式为真时才尝试 {.... } catch(..)

java - 无法捕获异常

java - try with resources execute finally block before catch 吗?

python - 在 Numpy 数组上计算交错/移位均值

python - 如何处理 Selenium 中的奇怪字符? 'utf8' 编解码器无法解码位置 0 中的字节 0xc3 :

python - 如何用Python/Pandas减去2列未对齐的数据?

c++ - 为什么当对象的构造函数抛出异常时不调用对象的析构函数?