首页 > 解决方案 > Python:动态更改逻辑运算符

问题描述

我已经开始深入研究 Python,目前在处理作业时有一个看起来像这样的代码片段:

if conditionA:
    if x > y:
    // perform action

elif conditionB:
    if x >= y:
    // perform same action

else:
    pass

换句话说,取决于是否conditionAconditionB真(它们不能都为真,但它们都可以为假)我想检查在任何一种情况下都非常相似的嵌套条件,除了逻辑运算符在“>”或“之间发生变化>="。我想学习一种方法来简化这一点,而不必在不为其创建函数的情况下两次包含相同的“动作”代码。我的直觉告诉我,我正在寻找一种将逻辑运算符“>”更改为“>=”(反之亦然)的方法,具体取决于 A 或 B 是否为真,但我在网上找不到有关此功能的任何信息。如果简化这一点是不可能的,那么我可以求助于维护我所拥有的,并简单地将“动作”代码变成一个函数,如果这被认为是最佳实践的话。

谢谢!

标签: pythonpython-3.xconditional-statementslogical-operators

解决方案


为什么不合并条件?像这样的东西:

if (conditionA and x > y) or (conditionB and x >= y):
    # perform your action

推荐阅读