code: def make_row(row, fields):
      
      if not hasattr(row, 'get'):
          row = {f.name: col for f, col in zip(fields, row)}
  
      row_fields = []
      for f in fields:
          val = row.get(f.name, None)
          if val is None:
              val = str(f.default_value())
          row_fields.append(val)
      return encode_row(row_fields)
docs: Encode a mapping of column name to values into a [incr tsdb()]
      profile line. The *fields* parameter determines what columns are
      used, and default values are provided if a column is missing from
      the mapping.
  
      Args:
          row: a mapping of column names to values
          fields: an iterable of :class:`Field` objects
      Returns:
          A [incr tsdb()]-encoded string