try-catch - try catch - 在python中放置try语句的位置

我正在学习python,发现很难找到放置try和except语句的位置


def divide (n1, n2):


 try:


 d = n1/n2


 except :


 print("Wrong")



然后divide (10 ,0) 产生"Wrong "

但是,如果我把尝试放在函数的顶部,它就不能工作,


try:


 def divide (n1, n2):


 d = n1/n2


except :


 print("Wrong")



然后divide(10 ,0)产生regular traceback错误。

为什么在第二个例子中不能工作?

时间:

第一个例子是正确使用它的方法。

在第二个例子中,你定义了函数:


 def divide (n1, n2):


 d = n1/n2



因此,当你调用它时,try语句没有执行,

在这里,你将找到如何处理python中的错误和异常的文档。

因为如果你不在try-except部分运行该函数,它总是会通过,如果你在try-except中调用它,函数总是在没被调用的情况下工作,那它当然会工作:


try:


 def divide (n1, n2):


 d = n1/n2


 print(divide(0,0))


except :


 print("Wrong")



它将给出:

 
Wrong



 

在所有的解决方案中,#1解决方案是最好的。

下面的代码也可以工作:


def divide (n1, n2):


 d = n1/n2



try:


 divide(12, 0)


except:


 print("Wrong") 



...