code: def set_colors(self, fg=None, bg=None):
          
          if fg is not None:
              self._fg = _format_color(fg, self._fg)
          if bg is not None:
              self._bg = _format_color(bg, self._bg)
docs: Sets the colors to be used with the L{print_str} and draw_* methods.
  
          Values of None will only leave the current values unchanged.
  
          Args:
              fg (Optional[Union[Tuple[int, int, int], int, Ellipsis]])
              bg (Optional[Union[Tuple[int, int, int], int, Ellipsis]])
          .. seealso:: :any:`move`, :any:`print_str`