Почему rgb triplet не конвертируется в название?

Я пытаюсь:

mycolor = "240,240,240"
mycolor = webcolors.rgb_to_name((mycolor))

Но ничего не выходит.

В чем может заключаться причина?


Ответы (1 шт):

Автор решения: MaxU

функция webcolors.rgb_to_name() ожидает на вход кортеж с тремя целыми значениями, а вы подаете ей на вход строку.

Попробуйте так:

mycolor = (240,240,240)
mycolor = webcolors.rgb_to_name(mycolor)

Если цвет у вас изначально задан как строка, тогда его можно распарсить:

from ast import literal_eval

mycolor = "240,240,240"

if isinstance(mycolor, str):
    mycolor = literal_eval(mycolor)

mycolor = webcolors.rgb_to_name(mycolor)

→ Ссылка