code: def batch_write_vasp_input(transformed_structures, vasp_input_set=MPRelaxSet,
                             output_dir=".", create_directory=True,
                             subfolder=None,
                             include_cif=False, **kwargs):
      
      for i, s in enumerate(transformed_structures):
          formula = re.sub(r"\s+", "", s.final_structure.formula)
          if subfolder is not None:
              subdir = subfolder(s)
              dirname = os.path.join(output_dir, subdir,
                                     "{}_{}".format(formula, i))
          else:
              dirname = os.path.join(output_dir, "{}_{}".format(formula, i))
          s.write_vasp_input(vasp_input_set, dirname,
                             create_directory=create_directory, **kwargs)
          if include_cif:
              from pymatgen.io.cif import CifWriter
  
              writer = CifWriter(s.final_structure)
              writer.write_file(os.path.join(dirname, "{}.cif".format(formula)))
docs: Batch write vasp input for a sequence of transformed structures to
      output_dir, following the format output_dir/{group}/{formula}_{number}.
  
      Args:
          transformed_structures: Sequence of TransformedStructures.
          vasp_input_set: pymatgen.io.vaspio_set.VaspInputSet to creates
              vasp input files from structures.
          output_dir: Directory to output files
          create_directory (bool): Create the directory if not present.
              Defaults to True.
          subfolder: Function to create subdirectory name from
              transformed_structure.
              e.g., lambda x: x.other_parameters["tags"][0] to use the first
              tag.
          include_cif (bool): Boolean indication whether to output a CIF as
              well. CIF files are generally better supported in visualization
              programs.