猿问

编写一个条件,简洁地将一个值与其他几个值进行比较

我正在寻找一种更好的方法来编写下面的代码,这样我就不需要多次使用 e 。

condition = e1>e and e2>e and e3>e and e4>e


jeck猫
浏览 4396回答 1
1回答

梵蒂冈之花

广泛地说(只要比较运算符在您的值的任何类型上都正常运行),一种相当清晰和简洁的方法是condition = e < min(e1, e2, e3, e4)e1这涉及 4 次比较(3 次用于找到、e2和e3的最小值e4;另一次e与最小值进行比较)。如果您试图最大程度地减少比较次数(例如,如果您的值是复杂对象并且比较它们是一项耗时的操作),您可能更喜欢稍微详细一点的condition = all(e < v for v in (e1, e2, e3, e4))all短路:一旦发现错误值,它就会停止迭代,因此该版本根据涉及的值执行 1 到 4 次比较。
随时随地看视频慕课网APP

相关分类

Python
我要回答