我正在寻找替代方法或更简洁的方法来返回三个唯一值的中间值。我现在拥有的是一个函数:
def middle(x, y, z):
if x > y and x < z:
return x
if y > x and y < z:
return y
return z
还有更好的吗?
最佳答案
def middle(x, y, z):
return sorted([x, y, z])[1]
这应该返回中间的数字。但是,如果您实际上是指最大数量
def maximum(x, y, z):
return max([x, y, z])
编辑:正如 abarnert 在评论部分所建议的,而不是 y>x and x<z
使用 x < y < z
,它更具可读性和 pythonic。
关于python - 找到三个数字的中间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19922939/