一个更简单的方法来检查多个变量对某个参数?



假设我有三个变量r, g, b。如果这些变量中的任何一个是< 0> 255,它们将分别四舍五入为0255

我对python的简单了解告诉我应该使用一堆if语句,我认为这既费时又不必要。还有其他方法吗?

if 255 > variable > 0:

你可以像这样简化数学参数。

rgb = (0,255,125)
check = [(0<=value<=255) for value in rgb]
print(sum(check)==3)
# -> True

检查是否所有值都符合条件。

如果您正在使用numpy,并且您有一个值数组,您可以使用一行代码夹紧您的值:

import numpy as np
a = np.array([ ... values ...])
a[a > 255] = 255
a[a < 0 ] = 0

numpy对向量的操作进行了优化,所以对于大量的值,numpy可能也更快。

if r in range(0, 255):
# code

你可以看看你是否喜欢这个语法

最新更新