Таким образом, моя программа до сих пор успешно может добавлять и сжимать файлы, которые находятся в том же каталоге, что и test.py
, но в этом же каталоге также есть папка с именем location
, в которой содержатся дополнительные файлы, например citynames.txt
Что случается, когда я делаю простой zip.write (logi c используемый в else
блоке) location
добавляется в zip-файл, однако его пустое значение, то есть по какой-то причине внутри него нет citynames.txt
, пожалуйста помогите как-нибудь добавить саму папку?
import os
import zipfile
import shutil
dir_path = os.path.dirname(os.path.realpath(__file__)) #holds the directory where script is located
os.chdir(dir_path) #Changes to directory where script is located
fp=os.listdir(dir_path) #file pointer
directory_size=len(os.listdir(dir_path))
zip1=zipfile.ZipFile('Archive.zip','w')
for i in range(directory_size) :
if fp[i]=='test.py':
break
if fp[i]=='location':
#Some code needs to be added here to write all the contents of folder "location" into
"Archive.zip"
else:
zip1.write(fp[i],compress_type=zipfile.ZIP_DEFLATED)
print("Process completed")
РЕДАКТИРОВАТЬ
Предполагая, что у местоположения есть дополнительные подпапки, как архивировать файлы внутри них, а также?