if 元素:而不是 if 元素不是 none 将不起作用



据我所知,如果没有电子邮件列,但当它到达if语句时,它会抛出KeyError: None,那么它应该只经过if语句。有人能帮我理解这条规则吗?谢谢

def not_isin(df1, df2, phone_col, df2phone_col,website_col, df2website_col,company_col, df2company_col, email_col, df2email_col):
print("entered not_isin")
df1 = df1[~df1[phone_col].isin(df2[df2phone_col])]
df1 = df1[~df1[website_col].isin(df2[df2website_col])]
df1 = df1[~df1[company_col].isin(df2[df2company_col])]
if df1[email_col] and df2[df2email_col]:
df1 = df1[~df1[email_col].isin(df2[df2email_col])]
return df1
return df1

我认为它在df1[email_col]失败。

显然,如果email_colNone,那么在到达if语句之前就得到了KeyError

最新更新