Ich versuche die Komplementärfarbe einer bestimmten Farbe mit Python herauszufinden. Hier ist mein Code. Der Code gibt eine Fehlermeldung aus, die besagt "AttributeError: 'list' Objekt hat kein Attribut 'Join'" Ich brauche einen Hinweis. Außerdem könnte es einen robusteren Code geben, der die entgegengesetzte/komplementäre Farbe berechnet, nach der ich im Grunde suche. Ihre Vorschläge werden hilfreich sein.Komplementärfarbe/Gegenfarbe einer gegebenen Farbe herausfinden
from PIL import Image
def complementaryColor(hex):
"""Returns complementary RGB color
Example:
>>>complementaryColor('FFFFFF')
'000000'
"""
if hex[0] == '#':
hex = hex[1:]
rgb = (hex[0:2], hex[2:4], hex[4:6])
comp = ['02%X' % (255 - int(a, 16)) for a in rgb]
return comp.join()
andere ähnliche Funktion
def blackwhite(my_hex):
"""Returns complementary RGB color
Example:
>>>complementaryColor('FFFFFF')
'000000'
"""
if my_hex[0] == '#':
my_hex = my_hex[1:]
rgb = (my_hex[0:2], my_hex[2:4], my_hex[4:6])
comp = ['%X' % (0 if (15 - int(a, 16)) <= 7 else 15) for a in rgb]
return ''.join(comp)
print blackwhite('#36190D')
Sie meinten '' '.join (comp) '? –
Ich würde die Hex-Farbe in Farbton-Sättigung-Helligkeit ändern - HSL. Finde den komplementären (entgegengesetzten) Farbtongrad und wandle ihn in Hex um. – Afrowave
@MosesKoledoye, ',' .join (comp) überwindet die Fehlermeldung, gibt aber bizarre Farbcodes aus. –