Create ZIP

    0

    0

    peterhorvat

    Python snippets

    The function returns a zip file of different types of files.

    Shortcut: cre

    Filename pattern: .py

    import io
    import zipfile
    
    def get_zip(datasets: list, filenames: list[str]):
      """
      Description
      ---------
        The function generate a ZIP file from the list of datasets
    
      Parameters
      ----------
        datasets: list[(bytes, str, str)], required
          - list structured like [(dataset, file_extension, mimetype), ...]
        filenames: list[str], required
          - names, used for ZIP files and all files inside the ZIP file
      Returns
      -------
        bytes
          - buffer content in bytes
      """
      zip_buffer = io.BytesIO()
      with zipfile.ZipFile(zip_buffer, "a", zipfile.ZIP_DEFLATED, False) as zip_file:
        for i, (dataset, extension, mimetype) in enumerate(datasets):
          if isinstance(dataset, str):
            zip_file.writestr(f"{filenames[i]}.{extension}", io.StringIO(dataset).getvalue())
          elif isinstance(dataset, bytes):
            zip_file.writestr(f"{filenames[i]}.{extension}", io.BytesIO(dataset).getvalue())
      return zip_buffer.getvalue()
    Codiga Logo
    Codiga Hub
    • Rulesets
    • Playground
    • Snippets
    • Cookbooks
    Legal
    • Security
    • Privacy Policy
    • Code Privacy
    • Terms of Service
    soc-2 icon

    We are SOC-2 Compliance Certified

    G2 high performer medal

    Codiga – All rights reserved 2022.