code: def RGB_color_picker(obj):
      
  
      ## Turn the input into a by 3-dividable string. SHA-384 is good because it
      ## divides into 3 components of the same size, which will be used to
      ## represent the RGB values of the color.
      digest = hashlib.sha384(str(obj).encode('utf-8')).hexdigest()
  
      ## Split the digest into 3 sub-strings of equivalent size.
      subsize = int(len(digest) / 3)
      splitted_digest = [digest[i * subsize: (i + 1) * subsize]
                         for i in range(3)]
  
      ## Convert those hexadecimal sub-strings into integer and scale them down
      ## to the 0..1 range.
      max_value = float(int("f" * subsize, 16))
      components = (
          int(d, 16)     ## Make a number from a list with hex digits
          / max_value    ## Scale it down to [0.0, 1.0]
          for d in splitted_digest)
  
      return Color(rgb2hex(components))
docs: Build a color representation from the string representation of an object
  
      This allows to quickly get a color from some data, with the
      additional benefit that the color will be the same as long as the
      (string representation of the) data is the same::
  
          >>> from colour import RGB_color_picker, Color
  
      Same inputs produce the same result::
  
          >>> RGB_color_picker("Something") == RGB_color_picker("Something")
          True
  
      ... but different inputs produce different colors::
  
          >>> RGB_color_picker("Something") != RGB_color_picker("Something else")
          True
  
      In any case, we still get a ``Color`` object::
  
          >>> isinstance(RGB_color_picker("Something"), Color)
          True