首页 > 解决方案 > Python中的多重比较AND和NOT

问题描述

我是 Python 的新手。我想组合 AND 和 NOT 运算符,但它没有用。如果某人年龄小于或等于 30 岁、男性、印度尼西亚人或马来西亚人,我预计结果将是 True。我会感谢你的帮助。您可以给出另一个不使用 If-Else 语句的 AND 和 NOT 组合示例。谢谢。

def job_vacancy_requirements(age, gender, nationality):
    gender = ['male', 'female']
    nationality = ['indonesian', 'australian', 'malaysian']
    return (age <= 30) and (gender == 'male') not (nationality == 'australian')
print(job_vacancy_requirements(25, 'male', 'indonesian'))
print(job_vacancy_requirements(30, 'female', 'malaysian'))
print(job_vacancy_requirements(27, 'male', 'australian'))

标签: python

解决方案


你只是and在那里遗漏了一个陈述。除非您需要对条件进行分组,否则无需在 Python 中使用括号。

return age <= 30 and gender == "male" and not nationality == "australian"

顺便说一句,有点政治不正确的方法......


推荐阅读