World's Best AI Learning Platform with profoundly Demanding Certification Programs
Designed by IITians, only for AI Learners.
Designed by IITians, only for AI Learners.
New to InsideAIML? Create an account
Employer? Create an account
We use the write() method to write to a ZIP.
# importing required modules from zipfile import ZipFile import os os.chdir('C:\\Users\\Om\\Desktop') def get_all_file_paths(directory): # initializing empty file paths list file_paths = [] # crawling through directory and subdirectories for root, directories, files in os.walk(directory): for filename in files: # join the two strings in order to form the full filepath. filepath = os.path.join(root, filename) file_paths.append(filepath) # returning all file paths return file_paths def main(): # path to folder which needs to be zipped directory = './python_files' # calling function to get all file paths in the directory file_paths = get_all_file_paths(directory) # printing the list of all files to be zipped print('Following files will be zipped:') for file_name in file_paths: print(file_name) # writing files to a zipfile with ZipFile('python_files.zip','w') as zip: # writing each file one by one for file in file_paths: zip.write(file) print('All files zipped successfully!') if __name__ == "__main__": main()
Output
Following files will be zipped: ./python_files\setup.txt ./python_files\add.py ./python_files\logo.JPG All files zipped successfully!
In [ ]:
Now let’s see how this works:
We create a function with uses the method os.walk(). In every iteration, it appends the files in that directory to the list paths.
Then, we get a list of the file paths bypassing the Demo directory’s path to the function get_paths().
Then, we create a ZipFile object in WRITE mode. Finally, we use the write() method to write all these files to the ZIP.