code: def save(self, path, encoding="utf-8", format_=None, fps=None, **kwargs):
          
          if format_ is None:
              ext = os.path.splitext(path)[1].lower()
              format_ = get_format_identifier(ext)
  
          with open(path, "w", encoding=encoding) as fp:
              self.to_file(fp, format_, fps=fps, **kwargs)
docs: Save subtitle file to given path.
  
          Arguments:
              path (str): Path to subtitle file.
              encoding (str): Character encoding of output file.
                  Defaults to UTF-8, which should be fine for most purposes.
              format_ (str): Optional, specifies desired subtitle format
                  (eg. `"srt"`, `"ass"`). Otherwise, format is detected
                  automatically from file extension. Thus, this argument
                  is rarely needed.
              fps (float): Framerate for frame-based formats (MicroDVD),
                  for other formats this argument is ignored. When omitted,
                  :attr:`SSAFile.fps` value is used (ie. the framerate used
                  for loading the file, if any). When the :class:`SSAFile`
                  wasn't loaded from MicroDVD, or if you wish save it with
                  different framerate, use this argument. See also
                  :meth:`SSAFile.transform_framerate()` for fixing bad
                  frame-based to time-based conversions.
              kwargs: Extra options for the writer.
  
          Raises:
              IOError
              UnicodeEncodeError
              pysubs2.exceptions.UnknownFPSError
              pysubs2.exceptions.UnknownFormatIdentifierError
              pysubs2.exceptions.UnknownFileExtensionError