【发布时间】:2021-07-25 19:41:15
【问题描述】:
假设我有一个这样的 for 循环
data = [1, 2, 3, '4', 5]
for d in data:
print(d * 0)
输出
TypeError: can only concatenate str (not "int") to str
如果我使用 Try: except 块
data = [1, 2, 3, '4', 5]
try:
for d in data:
print(d * 0)
except TypeError:
pass
输出
1
2
3
我想知道,是否有可能获得 skipped value
在这种情况下'4'
或者换句话说,是否有可能获取导致异常的值?
我的问题不仅与这段代码有关,还与 Python 整体有关。
【问题讨论】:
-
这个问题对于字符串异常更具体吗?如果你得到我,我想知道是否喜欢 python。
-
那个输出不是程序实际输出的……这个程序甚至不会导致异常,因为
'4' * 0是完全合法的。那么你的实际问题是什么?
标签: python exception try-except