Error Exception Should Inherit Base Python Error Object

空扰寡人 提交于 2021-01-07 02:41:51

问题


In Visual Basic, there is an inherited base object that is effective for error debugging purposes. Is there an equivalent for the "Err" object in Python?

Dim Msg As String  
' If an error occurs, construct an error message.  
On Error Resume Next   ' Defer error handling.  
Err.Clear  
Err.Raise(6)   ' Generate an "Overflow" error.  
' Check for error, then show message.  
If Err.Number <> 0 Then  
    Msg = "Error # " & Str(Err.Number) & " was generated by " _  
        & Err.Source & ControlChars.CrLf & Err.Description  
    MsgBox(Msg, MsgBoxStyle.Information, "Error")  
End If 

For example:

def exec_sproc(sql,cnxn):
   try:
      cursor=cnxn.cursor()
      cursor.execute(sql)
      cnxn.commit()
      cursor.close()
   except(err):
      print("error: {0}".format(err))

There is a suggestion to try

   except Exception,e: print str(e)

I get an invalid syntax because 'e' is not defined or in the former example err shows as invalid syntax.

What is the base error object in Python? In most examples, user-defined custom errors are demonstrated rather than coding a return of the actual "Python" error. If I know what the error is, I prefer not to make it. Instead, show me what Python sees as the error. (anything other than invalid syntax would help)


回答1:


I guess this is what you are looking for

def exec_sproc(sql,cnxn):
    try:
        cursor=cnxn.cursor()
        cursor.execute(sql)
        cnxn.commit()
        cursor.close()
    except Exception as err:
        print("error: {0}".format(err))

for more on Python exceptions look here



来源:https://stackoverflow.com/questions/65126577/error-exception-should-inherit-base-python-error-object

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!