Люди, не тупите как я! Ошибка в том, что название класса и виджета совпали... Соответственно программа не понимала, откуда второй аргумент, если только self есть.
Везде свои плюсы и минусы. Тут зависит от ситуации и что именно надо. В hex можно записать любой цвет который нужен, в rgb можно работать с тенями, а просто записывать цвета словами ты получишь чистый цвет