Min和Max在下面的python函数中有什么意义

时间:2018-02-19 07:40:23

标签: python python-3.x

有人可以解释为什么在下面的函数中使用min和max

def rgb(r, g, b):
    round = lambda x: min(255, max(x, 0))
    return ("{:02X}" * 3).format(round(r), round(g), round(b))

1 个答案:

答案 0 :(得分:0)

由于值r, g, b的可能范围为0 - 255,max(x, 0)是为了防止值降至0以下,min(255, max(x, 0))是为了防止值超过255

示例:如果r = -20,则max(r,0)= max(-20,0)= 0
如果r = 280,则max(255,min(r,0))= max(255,min(280,0))= max(255,0)= 255。

Graph for reference