Pythonを使って、RGBやHEXといったカラーコードを変換することができます。この記事では、Pythonを使ったカラーコードの変換方法について解説します。

RGBからHEXに変換する方法

RGBからHEXに変換するには、以下のようにします。

def rgb_to_hex(rgb):
    return '#{:02x}{:02x}{:02x}'.format(*rgb)

この関数にRGB値を渡すと、HEX値が返されます。例えば、以下のように使うことができます。

>>> rgb_to_hex((255, 255, 255))
'#ffffff'

HEXからRGBに変換する方法

HEXからRGBに変換するには、以下のようにします。

def hex_to_rgb(hex):
    hex = hex.lstrip('#')
    return tuple(int(hex[i:i+2], 16) for i in (0, 2, 4))

この関数にHEX値を渡すと、RGB値が返されます。例えば、以下のように使うことができます。

>>> hex_to_rgb('#ffffff')
(255, 255, 255)

RGBからHSLに変換する方法

RGBからHSLに変換するには、colorsysモジュールを使用します。

import colorsys

def rgb_to_hsl(rgb):
    r, g, b = rgb[0]/255.0, rgb[1]/255.0, rgb[2]/255.0
    h, l, s = colorsys.rgb_to_hls(r, g, b)
    return (int(h*360), int(s*100), int(l*100))

この関数にRGB値を渡すと、HSL値が返されます。例えば、以下のように使うことができます。

>>> rgb_to_hsl((255, 255, 255))
(0, 0, 100)

HSLからRGBに変換する方法

HSLからRGBに変換するには、colorsysモジュールを使用します。

import colorsys

def hsl_to_rgb(hsl):
    h, s, l = hsl[0]/360.0, hsl[1]/100.0, hsl[2]/100.0
    r, g, b = colorsys.hls_to_rgb(h, l, s)
    return (int(r*255), int(g*255), int(b*255))

この関数にHSL値を渡すと、RGB値が返されます。例えば、以下のように使うことができます。

>>> hsl_to_rgb((0, 0, 100))
(255, 255, 255)

以上がPythonを使ったカラーコードの変換方法についての解説でした。