![](/img/trans.png)
[英]Unable to connect to database error when implementing try / except statement in python
[英]Unable to get error when using "try" and "except" option in Python
我正在尝试运行代码以显示除 TypeError 之外的其他错误。
我正在使用的代码如下:
A = 1
B = "2"
try:
C = A + B + D
except TypeError:
print("Type Error")
预期输出如下:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-2-6b5697b50966> in <module>
1 A = 1
2 B = 2
----> 3 C = A + B + D
NameError: name 'D' is not defined
但是,实际输出如下:
Type Error
有人可以提出相同的解决方案吗?
我试图删除 try-except 并收到此错误:
TypeError: unsupported operand type(s) for +: 'int' and 'str'
说明:您已经在尝试添加A
和B
时发现了一个错误,因此您的代码将停止执行并且找不到第二个错误。
编辑:正如评论中所建议的,如果您先添加A
和D
然后B
,则会显示NameError
: A + D + B
Edit2:如果您认为您可能有不同类型的错误,一种可能性(例如,如果您希望在特定类型的错误上发生不同的事情)是有多个例外,如下所示:
A = 1
B = "2"
try:
C = A + D + B
except NameError:
print("ERROR: NameError")
except TypeError:
print("ERROR: TypeError")
产生这个输出:
ERROR: NameError
Python 将首先评估A + B
然后添加D
。 因此,在注意到D
未定义并抛出NameError
之前,python 将抛出TypeError
,因为+
运算符不适用于整数和字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.