日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

华为简易压缩算法python_Python(9) --实现一个简单的压缩软件/解压软件的功能

發布時間:2024/7/23 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 华为简易压缩算法python_Python(9) --实现一个简单的压缩软件/解压软件的功能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#壓縮軟件

#導入所需模塊,設置界面

import os

import zipfile

import tkinter

import tkinter.messagebox

import tkinter.filedialog

root = tkinter.Tk()

root.title('我的壓縮軟件')

root.minsize(300,400)

#設置需要壓縮文件的路徑變量

filenames = []

#添加文件的函數

def addfiles():

#全局化變量

global filenames

#彈出文件選擇對話框,選擇需要添加的文件

files = tkinter.filedialog.askopenfilenames()

#將選擇的文件添加到列表filenames中

filenames += list(files)

#將列表中的數據連接成字符串

strs = '\n'.join(filenames)

#將需要壓縮文件的路徑寫入標簽中顯示

label['text'] = strs

#判斷是否添加了文件,顯示添加文件的個數

global num

num = strs.count('\n') + 1

if filenames == []:

tkinter.messagebox.showinfo(title='提示信息', message='您好,您還未添加任何文件')

else:

tkinter.messagebox.showinfo(title='提示信息', message='您好,您共添加了{}個文件'.format(num))

#壓縮文件的函數

def zip_files():

#創建壓縮文件的目錄變量

global path

path = './myzip.zip'

#提示是否需要對當前文件進行壓縮

result = tkinter.messagebox.askokcancel(title='提示信息', message='是否需要對當前{}個文件進行壓縮?'.format(num))

#根據用戶選擇是否需要創建壓縮文件

if result == True:

# 創建壓縮文件

zp = zipfile.ZipFile(path, 'w')

# 向壓縮文件中添加文件內容

#遍歷添加文件的列表

for file in filenames:

global dir

dir = os.path.basename(file)

zp.write(file,dir)

# 關閉壓縮文件

zp.close()

#判斷壓縮文件是否創建成功

if os.path.exists(path):

tkinter.messagebox.showinfo(title = '提示信息',message = '壓縮文件創建成功!!!\n目錄為:'+ path)

else:

tkinter.messagebox.showerror(title = '錯誤信息',message = '壓縮文件創建失敗!!!')

#解壓文件的函數

def unzip_files():

try:

# 選擇解壓文件夾

tkinter.messagebox.showinfo(title='提示信息', message='請選擇選擇解壓文件!!!')

unzipfile = tkinter.filedialog.askopenfilename()

#提示用戶是否解壓當前文件

result = tkinter.messagebox.askokcancel(title='提示信息', message='是否需要對當文件進行解壓?')

if result == True:

# 選擇解壓的路徑

tkinter.messagebox.showinfo(title='提示信息', message='請選擇選擇解壓路徑!!!')

unzippath = tkinter.filedialog.askdirectory()

# 打開解壓文件夾

unzp = zipfile.ZipFile(unzipfile)

# 解壓所有文件

unzp.extractall(unzippath)

# 關閉壓縮文件

unzp.close()

tkinter.messagebox.showinfo(title='提示信息', message='解壓文件成功!!!')

else:

tkinter.messagebox.showinfo(title='提示信息', message='您已取消解壓,\n解壓文件失敗!!!')

# 判斷解壓是否成功

except:

tkinter.messagebox.showerror(title='錯誤信息', message='系統程序錯誤,\n解壓文件失敗!!!')

#擺放按鈕組件

btn_add = tkinter.Button(root,text = '添加文件',command = addfiles)

btn_add.place(x = 10,y = 20 )

btn_zip = tkinter.Button(root,text = '壓縮文件',command = zip_files)

btn_zip.place(x = 110,y = 20)

btn_unzip = tkinter.Button(root,text = '解壓文件',command = unzip_files)

btn_unzip.place(x = 210,y = 20)

#顯示信息區域

label = tkinter.Label(root,text = '暫時沒有文件信息',bg = 'white',anchor = 'nw',justify = 'left')

label.place(x = 10,y = 70 ,width = 280,height = 300)

root.mainloop()

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的华为简易压缩算法python_Python(9) --实现一个简单的压缩软件/解压软件的功能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。