code: def num_fmt(num, max_digits=None):
      r
      if num is None:
          return 'None'
      def num_in_mag(num, mag):
          return mag > num and num > (-1 * mag)
      if max_digits is None:
          if num_in_mag(num, 1):
              if num_in_mag(num, .1):
                  max_digits = 4
              else:
                  max_digits = 3
          else:
              max_digits = 1
      if util_type.is_float(num):
          num_str = ('%.' + str(max_digits) + 'f') % num
          num_str = num_str.rstrip('0').lstrip('0')
          if num_str.startswith('.'):
              num_str = '0' + num_str
          if num_str.endswith('.'):
              num_str = num_str + '0'
          return num_str
      elif util_type.is_int(num):
          return int_comma_str(num)
      else:
          return '%r'