import math
def num_to_rgb(val, max_val=3):
i = (val * 255 / max_val);
r = round(math.sin(0.024 * i + 0) * 127 + 128);
g = round(math.sin(0.024 * i + 2) * 127 + 128);
b = round(math.sin(0.024 * i + 4) * 127 + 128);
return (r,g,b)
print(num_to_rgb(1.32))
>> (183, 1, 179)
这将返回三个整数(r,g,b)的元组。你知道吗
确保不允许无效输入也是一个好主意(也称为负数,或val>;max\u val):
def num_to_rgb(val, max_val=3):
if (val > max_val):
raise ValueError("val must not be greater than max_val")
if (val < 0 or max_val < 0):
raise ValueError("arguments may not be negative")
i = (val * 255 / max_val);
r = round(math.sin(0.024 * i + 0) * 127 + 128);
g = round(math.sin(0.024 * i + 2) * 127 + 128);
b = round(math.sin(0.024 * i + 4) * 127 + 128);
return (r,g,b)
print(num_to_rgb(4.32))
>> ValueError: val must not be greater than max_val
您可以将this answer从链接到python的帖子转换为:
这将返回三个整数(r,g,b)的元组。你知道吗
确保不允许无效输入也是一个好主意(也称为负数,或val>;max\u val):
相关问题 更多 >
编程相关推荐