[英]Figuring out how to zip a file/folder using python
我正在学习 python 并且我编写了解压缩文件夹的代码。 因此,我几乎使用了相同的代码并将其重写为 zip 一个文件夹。 我的问题是当我运行代码时。 即使我没有错误,GUI 也不会出现。 我的另一个问题是我不确定我是否正确编写了 def Compress(): 代码?
import zipfile
from tkinter import *
from tkinter import filedialog
from zipfile import ZipFile
gui = Tk()
gui. geometry('500x500')
gui.title("Compression APP")
def compress():
filecom = filedialog.askopenfile()
with ZipFile(filecom, 'w', zipfile.ZIP_DEFLATED) as ext_Zip:
ext_Zip.write()
ext_Zip.close()
btn2 = Button(gui, text='file to zip', command= compress).pack()
gui.mainloop()
为 zip 尝试以下代码并解压缩文件夹中的多个文件,
# Import Module
from tkinter import *
from tkinter.filedialog import askopenfilenames
from zipfile import ZipFile
# Create Object
root = Tk()
# set Geometry
root.geometry('500*500')
def select_file():
global file_names
file_names = askopenfilenames(initialdir = "/",title = "Select File")
# UnZip All Files
def unzip_file():
for file_name in file_names:
if file_name.endswith('.zip'):
with ZipFile(file_name, 'r') as zip:
zip.extractall()
# Zip The Files
def zip_file():
with ZipFile('my_python_files.zip','w') as zip:
for file_name in file_names:
zip.write(file_name)
# Add Labels and Buttons
Label(root, text="Zip & Unzip File", font="italic 15 bold").pack(pady=10)
Button(root,text="Select File",command=select_file,font=14).pack(pady=10)
frame = Frame()
frame.pack(pady=20)
unzip_btn = Button(frame,text="UnZip All Files",command=unzip_file,relief="solid",bg="white",font=15)
unzip_btn.pack(side=LEFT,padx=10)
zip_btn = Button(frame,text="Zip All Files",command=zip_file,relief="solid",bg="white",font=15).pack()
# Execute Tkinter
root.mainloop()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.