我正在尝试将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
)并且仍然返回值的情况,对吗?我还有其他方法可以解决这个问题吗?