如何在Python中复制Excel的IFERROR

时间:2019-10-03 15:27:28

标签: python excel error-handling try-catch

我正在尝试将Excel公式转换为Python。该公式包含IIFERROR(value, value_if_error)语句。这是实际公式:

IFERROR(IF(AND(BQ2<>"",INT(BQ2)<='C:\Users\[R_FY_Template.xlsx]Date'!$B$2),"YES", "NO"),"NO")

'C:\Users\[R_FY_Template.xlsx]Date'!$B$2替换为今天的日期。

重新创建此函数的函数翻译(我需要它遍历数据帧中的行)如下:

def bs_trigger(row):
try:
  if (row.PRELIM_DATE != None) & (row.PRELIM_DATE <= today):
      return "YES"
  else:
      return "NO"
except ValueError:
      return "NO"

在表面上使用try/except可以处理存在错误(等同于IFERROR)并且仍然返回值的情况,对吗?我还有其他方法可以解决这个问题吗?

0 个答案:

没有答案