code: def write_array(fo, datum, schema):
      
  
      if len(datum) > 0:
          write_long(fo, len(datum))
          dtype = schema['items']
          for item in datum:
              write_data(fo, item, dtype)
      write_long(fo, 0)
docs: Arrays are encoded as a series of blocks.
  
      Each block consists of a long count value, followed by that many array
      items.  A block with count zero indicates the end of the array.  Each item
      is encoded per the array's item schema.
  
      If a block's count is negative, then the count is followed immediately by a
      long block size, indicating the number of bytes in the block.  The actual
      count in this case is the absolute value of the count written.