code: def _hstr(hours, places=2):
      
      if isnan(hours):
          return 'nan'
      sgn, h, m, s, etc = _sexagesimalize_to_int(hours, places)
      sign = '-' if sgn < 0.0 else ''
      return '%s%02dh %02dm %02d.%0*ds' % (sign, h, m, s, places, etc)
docs: Convert floating point `hours` into a sexagesimal string.
  
      >>> _hstr(12.125)
      '12h 07m 30.00s'
      >>> _hstr(12.125, places=4)
      '12h 07m 30.0000s'
      >>> _hstr(float('nan'))
      'nan'