Python 捕捉Tensorflow PyFunc上的异常

Python 捕捉Tensorflow PyFunc上的异常,python,tensorflow,Python,Tensorflow,我想在Tensorflow张量的表单中捕获无效日期格式的异常,但我无法使用ValueError和TypeError def _convert_date_format(feat): return datetime.strptime( feat.numpy().decode("utf-8"), DATETIME_DEFAULT_FORMAT ).timestamp() if feat else np.nan inputs = tf

我想在Tensorflow张量的表单中捕获无效日期格式的异常,但我无法使用
ValueError
TypeError

def _convert_date_format(feat):
    return datetime.strptime(
            feat.numpy().decode("utf-8"), DATETIME_DEFAULT_FORMAT
        ).timestamp() if feat else np.nan

inputs = tf.constant(['2012-06-19 06:01', '2012-06-42 06:01', '2012-06-19 06:01'])
try:
    map_func = lambda feat: tf.py_function(func=_convert_date_format, inp=[feat], Tout=tf.float32)
    return tf.map_fn(fn=map_func, elems=inputs, fn_output_signature=tf.float32)
except (ValueError, TypeError) as exc:
    raise "Invalid input" from exc
尽管尝试了,但脚本仍然失败,除非我实现了。我得到了以下错误:

E             ValueError: time data '2012-06-42 06:01' does not match format '%Y-%m-%d %H:%M'
E             
E              [Op:EagerPyFunc]
为什么我不能用这种方式捕捉错误?谢谢