1. 程式人生 > >求檔案的hash值(基於SHA3的Hash)

求檔案的hash值(基於SHA3的Hash)

import hashlib
import tkinter
from tkinter import filedialog
import pyperclip

def fileHash(fileName):
    m=hashlib.sha384()                    #可以根據需求來選擇md5,256,384,512
    with open(fileName,'rb') as file:     #'rb'以二進位制的格式開啟一個檔案
        while True:
            data=file.read(4096)      #read() 方法用於從檔案讀取指定的位元組數,如果未給定或為負則讀取所有。
if not data: break m.update(data) #Continue hashing of a message by consuming the next chunk of data. return m.hexdigest() def chooseFile(): root=tkinter.Tk() # 建立一個Tkinter.Tk()例項 root.withdraw() # 將Tkinter.Tk()例項隱藏 filename=tkinter.filedialog.askopenfilename(title=u'
請選擇檔案') # 選擇開啟什麼檔案,返回檔名 return filename def pyperClip(): filename=chooseFile() filehash=fileHash(filename) pyperclip.copy(filehash) print(filehash) if __name__ == "__main__": pyperClip()