Я просто пытаюсь создать простую программу конвертации RGB в HEX, но по какой-то причине она не работает, и я понятия не имею, почему. Я продолжаю сталкиваться с этой ошибкой: "remainder = c% 16 TypeError: неподдерживаемые типы операндов для%: 'NoneType' и 'int'"
Кроме того, если что-то не так с моим Программа, пожалуйста, дайте мне знать.
def rgb(r, g, b):
"""
purpose:
convert a rgb value to its corresponding hex value
Pre:
:param r: an integer, if r<0, assume 0, if r>255, assume 255
:param g: an integer, if g<0, assume 0, if g>255, assume 255
:param b: an integer, if b<0, assume 0, if b>255, assume 255
post:
None
:return:
The Hex value for the rbg as a string
"""
def rounder(c):
if c < 0:
c = 0
elif c > 255:
c = 255
else:
return c
def rgb_helper(c):
color = list()
while c != 0:
remainder = c % 16
color.append(remainder)
c = c//c
return color
def converter(color):
for i in color:
if i == 15:
color[i] = "F"
elif i == 14:
color[i] = "E"
elif i == 13:
color[i] = "D"
elif i == 12:
color[i] = "C"
elif i == 11:
color[i] = "B"
elif i == 10:
color[i] = "A"
else:
color[i] = str(color[i])
return color.reverse()
r = rounder(r)
g = rounder(g)
b = rounder(b)
red = rgb_helper(r)
green = rgb_helper(g)
blue = rgb_helper(b)
r = converter(red)
g = converter(green)
b = converter(blue)
rgb = r+g+b
return "".join(rgb)